[cantarell-fonts/respacing] Punctuation tweaks to outlines and spacing



commit 5aa4f108b9c0ac8df14f59243715650e92ceb747
Author: Nikolaus Waxweiler <madigens gmail com>
Date:   Sun Jun 23 23:45:59 2019 +0100

    Punctuation tweaks to outlines and spacing
    
    https://docs.microsoft.com/en-us/typography/develop/character-design-standards/punctuation

 src/Cantarell-Bold.ufo/glyphs/_typoquote.glif      | 14 ++---
 src/Cantarell-Bold.ufo/glyphs/asterisk.glif        | 48 ++++++++--------
 src/Cantarell-Bold.ufo/glyphs/backslash.glif       |  8 +++
 src/Cantarell-Bold.ufo/glyphs/bar.glif             | 18 ++++--
 src/Cantarell-Bold.ufo/glyphs/braceleft.glif       | 66 +++++++++++-----------
 src/Cantarell-Bold.ufo/glyphs/braceright.glif      |  4 +-
 src/Cantarell-Bold.ufo/glyphs/brokenbar.glif       | 26 ++++++---
 src/Cantarell-Bold.ufo/glyphs/bullet.glif          | 17 +++++-
 src/Cantarell-Bold.ufo/glyphs/bulletoperator.glif  | 10 +++-
 src/Cantarell-Bold.ufo/glyphs/colon.glif           |  2 +-
 src/Cantarell-Bold.ufo/glyphs/comma.glif           | 18 +++---
 src/Cantarell-Bold.ufo/glyphs/contents.plist       |  8 ---
 src/Cantarell-Bold.ufo/glyphs/ellipsis.glif        | 14 +++--
 src/Cantarell-Bold.ufo/glyphs/emdash.glif          | 11 ++--
 src/Cantarell-Bold.ufo/glyphs/endash.glif          | 10 ++--
 src/Cantarell-Bold.ufo/glyphs/exclamdown.glif      | 10 +++-
 src/Cantarell-Bold.ufo/glyphs/figuredash.glif      | 10 ++--
 src/Cantarell-Bold.ufo/glyphs/figurespace.glif     |  8 ++-
 src/Cantarell-Bold.ufo/glyphs/guillemetleft.glif   | 30 +++++-----
 src/Cantarell-Bold.ufo/glyphs/guillemetright.glif  | 38 ++++++++-----
 src/Cantarell-Bold.ufo/glyphs/guilsinglleft.glif   | 16 +++---
 src/Cantarell-Bold.ufo/glyphs/guilsinglright.glif  | 24 +++++---
 src/Cantarell-Bold.ufo/glyphs/horizontalbar.glif   |  8 ---
 src/Cantarell-Bold.ufo/glyphs/hyphen.glif          | 13 +++--
 src/Cantarell-Bold.ufo/glyphs/hyphentwo.glif       |  8 ---
 src/Cantarell-Bold.ufo/glyphs/layerinfo.plist      |  8 ---
 .../glyphs/leftanglebracket-math.glif              | 16 +++---
 .../glyphs/nonbreakinghyphen.glif                  | 16 ------
 src/Cantarell-Bold.ufo/glyphs/numbersign.glif      | 34 +++++------
 src/Cantarell-Bold.ufo/glyphs/period.glif          | 26 ++++-----
 .../glyphs/periodcentered.loclC_A_T_.glif          | 24 ++++----
 src/Cantarell-Bold.ufo/glyphs/questiondown.glif    | 10 +++-
 src/Cantarell-Bold.ufo/glyphs/quotedbl.glif        |  8 +++
 src/Cantarell-Bold.ufo/glyphs/quotedblbase.glif    | 10 +++-
 src/Cantarell-Bold.ufo/glyphs/quotedblleft.glif    | 10 +++-
 src/Cantarell-Bold.ufo/glyphs/quotedblright.glif   | 12 +++-
 src/Cantarell-Bold.ufo/glyphs/quoteleft.glif       |  4 +-
 src/Cantarell-Bold.ufo/glyphs/quoteright.glif      |  8 ++-
 src/Cantarell-Bold.ufo/glyphs/quotesinglbase.glif  |  8 ++-
 .../glyphs/rightanglebracket-math.glif             | 16 +++---
 src/Cantarell-Bold.ufo/glyphs/semicolon.glif       |  6 +-
 src/Cantarell-Bold.ufo/glyphs/softhyphen.glif      |  8 ---
 src/Cantarell-Bold.ufo/glyphs/underscore.glif      | 10 ++--
 src/Cantarell-Bold.ufo/lib.plist                   | 12 ----
 src/Cantarell-Light.ufo/glyphs/_typoquote.glif     |  8 +--
 src/Cantarell-Light.ufo/glyphs/backslash.glif      | 10 +++-
 src/Cantarell-Light.ufo/glyphs/bar.glif            | 18 ++++--
 src/Cantarell-Light.ufo/glyphs/braceleft.glif      | 66 +++++++++++-----------
 src/Cantarell-Light.ufo/glyphs/braceright.glif     |  4 +-
 src/Cantarell-Light.ufo/glyphs/brokenbar.glif      | 26 ++++++---
 src/Cantarell-Light.ufo/glyphs/bullet.glif         | 17 +++++-
 src/Cantarell-Light.ufo/glyphs/bulletoperator.glif | 10 +++-
 src/Cantarell-Light.ufo/glyphs/colon.glif          |  2 +-
 src/Cantarell-Light.ufo/glyphs/comma.glif          | 18 +++---
 src/Cantarell-Light.ufo/glyphs/contents.plist      |  8 ---
 src/Cantarell-Light.ufo/glyphs/ellipsis.glif       | 14 +++--
 src/Cantarell-Light.ufo/glyphs/emdash.glif         | 11 ++--
 src/Cantarell-Light.ufo/glyphs/endash.glif         | 10 ++--
 src/Cantarell-Light.ufo/glyphs/exclamdown.glif     |  8 ++-
 src/Cantarell-Light.ufo/glyphs/figuredash.glif     | 10 ++--
 src/Cantarell-Light.ufo/glyphs/figurespace.glif    |  8 ++-
 src/Cantarell-Light.ufo/glyphs/guillemetleft.glif  | 28 ++++-----
 src/Cantarell-Light.ufo/glyphs/guillemetright.glif | 38 ++++++++-----
 src/Cantarell-Light.ufo/glyphs/guilsinglleft.glif  | 16 +++---
 src/Cantarell-Light.ufo/glyphs/guilsinglright.glif | 24 +++++---
 src/Cantarell-Light.ufo/glyphs/hairspace.glif      |  2 +-
 src/Cantarell-Light.ufo/glyphs/horizontalbar.glif  |  8 ---
 src/Cantarell-Light.ufo/glyphs/hyphen.glif         | 13 +++--
 src/Cantarell-Light.ufo/glyphs/hyphentwo.glif      |  8 ---
 src/Cantarell-Light.ufo/glyphs/layerinfo.plist     |  8 ---
 .../glyphs/leftanglebracket-math.glif              | 16 +++---
 .../glyphs/nonbreakinghyphen.glif                  | 16 ------
 src/Cantarell-Light.ufo/glyphs/numbersign.glif     | 34 +++++------
 src/Cantarell-Light.ufo/glyphs/period.glif         | 26 ++++-----
 src/Cantarell-Light.ufo/glyphs/questiondown.glif   | 10 +++-
 src/Cantarell-Light.ufo/glyphs/quotedbl.glif       |  8 +++
 src/Cantarell-Light.ufo/glyphs/quotedblbase.glif   | 10 +++-
 src/Cantarell-Light.ufo/glyphs/quotedblleft.glif   | 10 +++-
 src/Cantarell-Light.ufo/glyphs/quotedblright.glif  | 12 +++-
 src/Cantarell-Light.ufo/glyphs/quoteleft.glif      |  4 +-
 src/Cantarell-Light.ufo/glyphs/quoteright.glif     |  8 ++-
 src/Cantarell-Light.ufo/glyphs/quotesinglbase.glif |  8 ++-
 .../glyphs/rightanglebracket-math.glif             | 16 +++---
 src/Cantarell-Light.ufo/glyphs/semicolon.glif      |  6 +-
 src/Cantarell-Light.ufo/glyphs/softhyphen.glif     |  8 ---
 src/Cantarell-Light.ufo/glyphs/underscore.glif     | 10 ++--
 src/Cantarell-Light.ufo/lib.plist                  | 12 ----
 src/Cantarell-Regular.ufo/glyphs/S_altillo.glif    |  4 +-
 src/Cantarell-Regular.ufo/glyphs/_typoquote.glif   |  8 +--
 src/Cantarell-Regular.ufo/glyphs/asterisk.glif     | 30 +++++-----
 src/Cantarell-Regular.ufo/glyphs/backslash.glif    | 12 +++-
 src/Cantarell-Regular.ufo/glyphs/bar.glif          | 18 ++++--
 src/Cantarell-Regular.ufo/glyphs/braceleft.glif    | 66 +++++++++++-----------
 src/Cantarell-Regular.ufo/glyphs/braceright.glif   |  4 +-
 src/Cantarell-Regular.ufo/glyphs/brokenbar.glif    | 26 ++++++---
 src/Cantarell-Regular.ufo/glyphs/bullet.glif       | 15 ++++-
 .../glyphs/bulletoperator.glif                     | 10 +++-
 src/Cantarell-Regular.ufo/glyphs/colon.glif        |  2 +-
 src/Cantarell-Regular.ufo/glyphs/comma.glif        | 18 +++---
 src/Cantarell-Regular.ufo/glyphs/contents.plist    |  8 ---
 src/Cantarell-Regular.ufo/glyphs/ellipsis.glif     | 14 +++--
 src/Cantarell-Regular.ufo/glyphs/emdash.glif       | 11 ++--
 src/Cantarell-Regular.ufo/glyphs/endash.glif       | 10 ++--
 src/Cantarell-Regular.ufo/glyphs/exclam.glif       | 34 +++++------
 src/Cantarell-Regular.ufo/glyphs/exclamdown.glif   | 10 +++-
 src/Cantarell-Regular.ufo/glyphs/figuredash.glif   | 10 ++--
 src/Cantarell-Regular.ufo/glyphs/figurespace.glif  |  8 ++-
 .../glyphs/guillemetleft.glif                      | 28 ++++-----
 .../glyphs/guillemetright.glif                     | 38 ++++++++-----
 .../glyphs/guilsinglleft.glif                      | 16 +++---
 .../glyphs/guilsinglright.glif                     | 24 +++++---
 .../glyphs/horizontalbar.glif                      |  8 ---
 src/Cantarell-Regular.ufo/glyphs/hyphen.glif       | 13 +++--
 src/Cantarell-Regular.ufo/glyphs/hyphentwo.glif    |  8 ---
 src/Cantarell-Regular.ufo/glyphs/layerinfo.plist   |  8 ---
 .../glyphs/leftanglebracket-math.glif              | 16 +++---
 .../glyphs/nonbreakinghyphen.glif                  | 16 ------
 src/Cantarell-Regular.ufo/glyphs/numbersign.glif   | 34 +++++------
 src/Cantarell-Regular.ufo/glyphs/period.glif       | 26 ++++-----
 src/Cantarell-Regular.ufo/glyphs/questiondown.glif | 10 +++-
 src/Cantarell-Regular.ufo/glyphs/quotedbl.glif     | 14 ++++-
 src/Cantarell-Regular.ufo/glyphs/quotedblbase.glif | 10 +++-
 src/Cantarell-Regular.ufo/glyphs/quotedblleft.glif | 10 +++-
 .../glyphs/quotedblright.glif                      | 14 ++++-
 src/Cantarell-Regular.ufo/glyphs/quoteleft.glif    |  4 +-
 src/Cantarell-Regular.ufo/glyphs/quoteright.glif   |  8 ++-
 .../glyphs/quotesinglbase.glif                     |  8 ++-
 src/Cantarell-Regular.ufo/glyphs/quotesingle.glif  | 10 ++--
 .../glyphs/rightanglebracket-math.glif             | 16 +++---
 src/Cantarell-Regular.ufo/glyphs/semicolon.glif    |  6 +-
 src/Cantarell-Regular.ufo/glyphs/softhyphen.glif   |  8 ---
 src/Cantarell-Regular.ufo/glyphs/underscore.glif   | 10 ++--
 src/Cantarell-Regular.ufo/lib.plist                | 12 ----
 src/Cantarell_autospace.py                         |  5 +-
 134 files changed, 1079 insertions(+), 911 deletions(-)
---
diff --git a/src/Cantarell-Bold.ufo/glyphs/_typoquote.glif b/src/Cantarell-Bold.ufo/glyphs/_typoquote.glif
index dccf1d1b..097395e9 100644
--- a/src/Cantarell-Bold.ufo/glyphs/_typoquote.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/_typoquote.glif
@@ -3,14 +3,14 @@
   <advance width="389"/>
   <outline>
     <contour>
-      <point x="74" y="-171" type="curve"/>
-      <point x="220" y="-171" type="line"/>
-      <point x="265" y="-80"/>
-      <point x="308" y="53"/>
+      <point x="75" y="-171" type="curve"/>
+      <point x="226" y="-171" type="line"/>
+      <point x="269" y="-93"/>
+      <point x="302" y="26"/>
       <point x="308" y="126" type="curve"/>
-      <point x="120" y="126" type="line"/>
-      <point x="120" y="37"/>
-      <point x="102" y="-82"/>
+      <point x="130" y="126" type="line"/>
+      <point x="125" y="25"/>
+      <point x="103" y="-94"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/asterisk.glif b/src/Cantarell-Bold.ufo/glyphs/asterisk.glif
index df8cf893..60e2253b 100644
--- a/src/Cantarell-Bold.ufo/glyphs/asterisk.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/asterisk.glif
@@ -4,40 +4,40 @@
   <unicode hex="002A"/>
   <outline>
     <contour>
-      <point x="243" y="467" type="line"/>
-      <point x="456" y="526" type="line"/>
-      <point x="391" y="643" type="line"/>
-      <point x="219" y="511" type="line"/>
+      <point x="242" y="467" type="line"/>
+      <point x="458" y="521" type="line"/>
+      <point x="387" y="648" type="line"/>
+      <point x="218" y="511" type="line"/>
     </contour>
     <contour>
-      <point x="77" y="323" type="line"/>
-      <point x="245" y="464" type="line"/>
-      <point x="220" y="507" type="line"/>
-      <point x="13" y="441" type="line"/>
+      <point x="79" y="318" type="line"/>
+      <point x="244" y="464" type="line"/>
+      <point x="219" y="507" type="line"/>
+      <point x="9" y="446" type="line"/>
     </contour>
     <contour>
-      <point x="157" y="272" type="line"/>
-      <point x="306" y="272" type="line"/>
-      <point x="258" y="488" type="line"/>
-      <point x="208" y="488" type="line"/>
+      <point x="150" y="272" type="line"/>
+      <point x="311" y="272" type="line"/>
+      <point x="257" y="488" type="line"/>
+      <point x="207" y="488" type="line"/>
     </contour>
     <contour>
-      <point x="221" y="467" type="line"/>
-      <point x="246" y="510" type="line"/>
-      <point x="79" y="651" type="line"/>
-      <point x="14" y="535" type="line"/>
+      <point x="220" y="467" type="line"/>
+      <point x="245" y="510" type="line"/>
+      <point x="81" y="656" type="line"/>
+      <point x="10" y="530" type="line"/>
     </contour>
     <contour>
-      <point x="385" y="320" type="line"/>
-      <point x="451" y="437" type="line"/>
-      <point x="246" y="507" type="line"/>
-      <point x="219" y="463" type="line"/>
+      <point x="381" y="315" type="line"/>
+      <point x="453" y="442" type="line"/>
+      <point x="245" y="507" type="line"/>
+      <point x="218" y="463" type="line"/>
     </contour>
     <contour>
-      <point x="208" y="488" type="line"/>
-      <point x="258" y="488" type="line"/>
-      <point x="306" y="704" type="line"/>
-      <point x="157" y="704" type="line"/>
+      <point x="207" y="488" type="line"/>
+      <point x="257" y="488" type="line"/>
+      <point x="311" y="704" type="line"/>
+      <point x="150" y="704" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/backslash.glif b/src/Cantarell-Bold.ufo/glyphs/backslash.glif
index c7e25579..1742e2c1 100644
--- a/src/Cantarell-Bold.ufo/glyphs/backslash.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/backslash.glif
@@ -5,4 +5,12 @@
   <outline>
     <component base="slash" xScale="-1" xOffset="364"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|slash</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>slash</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/bar.glif b/src/Cantarell-Bold.ufo/glyphs/bar.glif
index b290eb14..ea83b939 100644
--- a/src/Cantarell-Bold.ufo/glyphs/bar.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/bar.glif
@@ -1,13 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bar" format="2">
-  <advance width="325"/>
+  <advance width="275"/>
   <unicode hex="007C"/>
   <outline>
     <contour>
-      <point x="80" y="-161" type="line"/>
-      <point x="245" y="-161" type="line"/>
-      <point x="245" y="743" type="line"/>
-      <point x="80" y="743" type="line"/>
+      <point x="55" y="-180" type="line"/>
+      <point x="220" y="-180" type="line"/>
+      <point x="220" y="739" type="line"/>
+      <point x="55" y="739" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>I</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>I</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/braceleft.glif b/src/Cantarell-Bold.ufo/glyphs/braceleft.glif
index e15243d9..f82695fe 100644
--- a/src/Cantarell-Bold.ufo/glyphs/braceleft.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/braceleft.glif
@@ -1,41 +1,41 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="braceleft" format="2">
-  <advance width="417"/>
+  <advance width="404"/>
   <unicode hex="007B"/>
   <outline>
     <contour>
-      <point x="401" y="-183" type="curve"/>
-      <point x="401" y="-42" type="line"/>
-      <point x="333" y="-42"/>
-      <point x="296" y="-9"/>
-      <point x="296" y="50" type="curve" smooth="yes"/>
-      <point x="296" y="130" type="line" smooth="yes"/>
-      <point x="296" y="210"/>
-      <point x="251" y="276"/>
-      <point x="184" y="294" type="curve"/>
-      <point x="184" y="295" type="line"/>
-      <point x="251" y="324"/>
-      <point x="296" y="387"/>
-      <point x="296" y="454" type="curve" smooth="yes"/>
-      <point x="296" y="515" type="line" smooth="yes"/>
-      <point x="296" y="575"/>
-      <point x="332" y="608"/>
-      <point x="401" y="608" type="curve"/>
-      <point x="401" y="749" type="line"/>
-      <point x="234" y="749"/>
-      <point x="135" y="672"/>
-      <point x="135" y="546" type="curve" smooth="yes"/>
-      <point x="135" y="444" type="line" smooth="yes"/>
-      <point x="135" y="392"/>
-      <point x="62" y="339"/>
-      <point x="-4" y="318" type="curve"/>
-      <point x="-4" y="271" type="line"/>
-      <point x="80" y="241"/>
-      <point x="135" y="181"/>
-      <point x="135" y="120" type="curve" smooth="yes"/>
-      <point x="135" y="9" type="line" smooth="yes"/>
-      <point x="135" y="-111"/>
-      <point x="235" y="-183"/>
+      <point x="388" y="-183" type="curve"/>
+      <point x="388" y="-42" type="line"/>
+      <point x="311" y="-42"/>
+      <point x="294" y="-9"/>
+      <point x="294" y="50" type="curve" smooth="yes"/>
+      <point x="294" y="140" type="line" smooth="yes"/>
+      <point x="294" y="224"/>
+      <point x="241" y="283"/>
+      <point x="155" y="294" type="curve"/>
+      <point x="155" y="295" type="line"/>
+      <point x="235" y="299"/>
+      <point x="294" y="354"/>
+      <point x="294" y="424" type="curve" smooth="yes"/>
+      <point x="294" y="515" type="line" smooth="yes"/>
+      <point x="294" y="584"/>
+      <point x="319" y="608"/>
+      <point x="388" y="608" type="curve"/>
+      <point x="388" y="749" type="line"/>
+      <point x="220" y="749"/>
+      <point x="133" y="680"/>
+      <point x="133" y="546" type="curve" smooth="yes"/>
+      <point x="133" y="454" type="line" smooth="yes"/>
+      <point x="133" y="385"/>
+      <point x="85" y="344"/>
+      <point x="3" y="344" type="curve"/>
+      <point x="3" y="221" type="line"/>
+      <point x="85" y="221"/>
+      <point x="133" y="187"/>
+      <point x="133" y="130" type="curve" smooth="yes"/>
+      <point x="133" y="9" type="line" smooth="yes"/>
+      <point x="133" y="-111"/>
+      <point x="210" y="-183"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/braceright.glif b/src/Cantarell-Bold.ufo/glyphs/braceright.glif
index e44538b0..f75a32a3 100644
--- a/src/Cantarell-Bold.ufo/glyphs/braceright.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/braceright.glif
@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="braceright" format="2">
-  <advance width="417"/>
+  <advance width="404"/>
   <unicode hex="007D"/>
   <outline>
-    <component base="braceleft" xScale="-1" yScale="-1" xOffset="417" yOffset="566"/>
+    <component base="braceleft" xScale="-1" yScale="-1" xOffset="404" yOffset="566"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Bold.ufo/glyphs/brokenbar.glif b/src/Cantarell-Bold.ufo/glyphs/brokenbar.glif
index 344cb3fc..fe975808 100644
--- a/src/Cantarell-Bold.ufo/glyphs/brokenbar.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/brokenbar.glif
@@ -1,19 +1,27 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="brokenbar" format="2">
-  <advance width="330"/>
+  <advance width="280"/>
   <unicode hex="00A6"/>
   <outline>
     <contour>
-      <point x="80" y="-161" type="line"/>
-      <point x="250" y="-161" type="line"/>
-      <point x="250" y="181" type="line"/>
-      <point x="80" y="181" type="line"/>
+      <point x="55" y="-184" type="line"/>
+      <point x="225" y="-184" type="line"/>
+      <point x="225" y="181" type="line"/>
+      <point x="55" y="181" type="line"/>
     </contour>
     <contour>
-      <point x="80" y="412" type="line"/>
-      <point x="250" y="412" type="line"/>
-      <point x="250" y="743" type="line"/>
-      <point x="80" y="743" type="line"/>
+      <point x="55" y="412" type="line"/>
+      <point x="225" y="412" type="line"/>
+      <point x="225" y="743" type="line"/>
+      <point x="55" y="743" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>I</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>I</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/bullet.glif b/src/Cantarell-Bold.ufo/glyphs/bullet.glif
index f464ddcd..9342f239 100644
--- a/src/Cantarell-Bold.ufo/glyphs/bullet.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/bullet.glif
@@ -1,8 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bullet" format="2">
-  <advance width="464"/>
+  <advance width="442"/>
   <unicode hex="2022"/>
   <outline>
-    <component base="period" xScale="2" yScale="2" xOffset="-50" yOffset="92"/>
+    <contour>
+      <point x="221" y="138" type="curve" smooth="yes"/>
+      <point x="342" y="138"/>
+      <point x="421" y="225"/>
+      <point x="421" y="338" type="curve" smooth="yes"/>
+      <point x="421" y="459"/>
+      <point x="342" y="546"/>
+      <point x="221" y="546" type="curve" smooth="yes"/>
+      <point x="100" y="546"/>
+      <point x="21" y="459"/>
+      <point x="21" y="338" type="curve" smooth="yes"/>
+      <point x="21" y="225"/>
+      <point x="100" y="138"/>
+    </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/bulletoperator.glif 
b/src/Cantarell-Bold.ufo/glyphs/bulletoperator.glif
index 6ea39095..dc98b259 100644
--- a/src/Cantarell-Bold.ufo/glyphs/bulletoperator.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/bulletoperator.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bulletoperator" format="2">
-  <advance width="379"/>
+  <advance width="270"/>
   <unicode hex="2219"/>
   <outline>
-    <component base="period" xScale="1.25716" yScale="1.25716" xOffset="12" yOffset="230"/>
+    <component base="period" yOffset="230"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>period</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/colon.glif b/src/Cantarell-Bold.ufo/glyphs/colon.glif
index 47478b5e..5bb44e93 100644
--- a/src/Cantarell-Bold.ufo/glyphs/colon.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/colon.glif
@@ -1,6 +1,6 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="colon" format="2">
-  <advance width="282"/>
+  <advance width="270"/>
   <unicode hex="003A"/>
   <outline>
     <component base="period"/>
diff --git a/src/Cantarell-Bold.ufo/glyphs/comma.glif b/src/Cantarell-Bold.ufo/glyphs/comma.glif
index 8c639847..0e4586d0 100644
--- a/src/Cantarell-Bold.ufo/glyphs/comma.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/comma.glif
@@ -1,17 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="comma" format="2">
-  <advance width="282"/>
+  <advance width="270"/>
   <unicode hex="002C"/>
   <outline>
     <contour>
-      <point x="19" y="-178" type="curve"/>
-      <point x="152" y="-178" type="line"/>
-      <point x="203" y="-67"/>
-      <point x="233" y="41"/>
-      <point x="233" y="113" type="curve"/>
-      <point x="61" y="113" type="line"/>
-      <point x="61" y="15"/>
-      <point x="45" y="-94"/>
+      <point x="6" y="-179" type="curve"/>
+      <point x="158" y="-179" type="line"/>
+      <point x="201" y="-83"/>
+      <point x="228" y="46"/>
+      <point x="228" y="144" type="curve"/>
+      <point x="50" y="144" type="line"/>
+      <point x="50" y="39"/>
+      <point x="31" y="-90"/>
     </contour>
   </outline>
   <lib>
diff --git a/src/Cantarell-Bold.ufo/glyphs/contents.plist b/src/Cantarell-Bold.ufo/glyphs/contents.plist
index 92dbbc54..d539a610 100644
--- a/src/Cantarell-Bold.ufo/glyphs/contents.plist
+++ b/src/Cantarell-Bold.ufo/glyphs/contents.plist
@@ -1276,8 +1276,6 @@
     <string>hookabovecomb.case.glif</string>
     <key>hookabovecomb.loclVIET</key>
     <string>hookabovecomb.loclV_I_E_T_.glif</string>
-    <key>horizontalbar</key>
-    <string>horizontalbar.glif</string>
     <key>horncomb</key>
     <string>horncomb.glif</string>
     <key>hryvnia</key>
@@ -1290,8 +1288,6 @@
     <string>hungarumlautcomb.case.glif</string>
     <key>hyphen</key>
     <string>hyphen.glif</string>
-    <key>hyphentwo</key>
-    <string>hyphentwo.glif</string>
     <key>i</key>
     <string>i.glif</string>
     <key>i-cy</key>
@@ -1510,8 +1506,6 @@
     <string>nje-cy.glif</string>
     <key>nlinebelow</key>
     <string>nlinebelow.glif</string>
-    <key>nonbreakinghyphen</key>
-    <string>nonbreakinghyphen.glif</string>
     <key>notequal</key>
     <string>notequal.glif</string>
     <key>notequal.tf</key>
@@ -1852,8 +1846,6 @@
     <string>slashshortcomb.glif</string>
     <key>slashshortcomb.case</key>
     <string>slashshortcomb.case.glif</string>
-    <key>softhyphen</key>
-    <string>softhyphen.glif</string>
     <key>softsign-cy</key>
     <string>softsign-cy.glif</string>
     <key>space</key>
diff --git a/src/Cantarell-Bold.ufo/glyphs/ellipsis.glif b/src/Cantarell-Bold.ufo/glyphs/ellipsis.glif
index ce4f0a9c..7cce50a3 100644
--- a/src/Cantarell-Bold.ufo/glyphs/ellipsis.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/ellipsis.glif
@@ -1,10 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="ellipsis" format="2">
-  <advance width="822"/>
+  <advance width="1000"/>
   <unicode hex="2026"/>
   <outline>
-    <component base="period" xOffset="540"/>
-    <component base="period" xOffset="270"/>
-    <component base="period"/>
+    <component base="period" xOffset="698"/>
+    <component base="period" xOffset="365"/>
+    <component base="period" xOffset="32"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/emdash.glif b/src/Cantarell-Bold.ufo/glyphs/emdash.glif
index 4b62807d..53ff4a8b 100644
--- a/src/Cantarell-Bold.ufo/glyphs/emdash.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/emdash.glif
@@ -1,13 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="emdash" format="2">
-  <advance width="1108"/>
+  <advance width="1000"/>
   <unicode hex="2014"/>
+  <unicode hex="2015"/>
   <outline>
     <contour>
-      <point x="54" y="189" type="line"/>
-      <point x="1054" y="189" type="line"/>
-      <point x="1054" y="329" type="line"/>
-      <point x="54" y="329" type="line"/>
+      <point x="-10" y="189" type="line"/>
+      <point x="1010" y="189" type="line"/>
+      <point x="1010" y="329" type="line"/>
+      <point x="-10" y="329" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/endash.glif b/src/Cantarell-Bold.ufo/glyphs/endash.glif
index d1b5002a..d4997375 100644
--- a/src/Cantarell-Bold.ufo/glyphs/endash.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/endash.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="endash" format="2">
-  <advance width="608"/>
+  <advance width="500"/>
   <unicode hex="2013"/>
   <outline>
     <contour>
-      <point x="54" y="189" type="line"/>
-      <point x="554" y="189" type="line"/>
-      <point x="554" y="329" type="line"/>
-      <point x="54" y="329" type="line"/>
+      <point x="-10" y="189" type="line"/>
+      <point x="510" y="189" type="line"/>
+      <point x="510" y="329" type="line"/>
+      <point x="-10" y="329" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/exclamdown.glif b/src/Cantarell-Bold.ufo/glyphs/exclamdown.glif
index f9868662..9a35beeb 100644
--- a/src/Cantarell-Bold.ufo/glyphs/exclamdown.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/exclamdown.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="exclamdown" format="2">
-  <advance width="263"/>
+  <advance width="261"/>
   <unicode hex="00A1"/>
   <outline>
-    <component base="exclam" yScale="-1" xOffset="-6" yOffset="480"/>
+    <component base="exclam" yScale="-1" xOffset="7" yOffset="480"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>exclam</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/figuredash.glif b/src/Cantarell-Bold.ufo/glyphs/figuredash.glif
index e3a3cdde..62fb97fe 100644
--- a/src/Cantarell-Bold.ufo/glyphs/figuredash.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/figuredash.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="figuredash" format="2">
-  <advance width="712"/>
+  <advance width="600"/>
   <unicode hex="2012"/>
   <outline>
     <contour>
-      <point x="54" y="189" type="line"/>
-      <point x="658" y="189" type="line"/>
-      <point x="658" y="329" type="line"/>
-      <point x="54" y="329" type="line"/>
+      <point x="50" y="189" type="line"/>
+      <point x="550" y="189" type="line"/>
+      <point x="550" y="329" type="line"/>
+      <point x="50" y="329" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/figurespace.glif b/src/Cantarell-Bold.ufo/glyphs/figurespace.glif
index 23fcc00f..68267d3e 100644
--- a/src/Cantarell-Bold.ufo/glyphs/figurespace.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/figurespace.glif
@@ -1,7 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="figurespace" format="2">
-  <advance width="580"/>
+  <advance width="600"/>
   <unicode hex="2007"/>
   <outline>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>zero.tf</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/guillemetleft.glif 
b/src/Cantarell-Bold.ufo/glyphs/guillemetleft.glif
index 83f4ad55..53245ad3 100644
--- a/src/Cantarell-Bold.ufo/glyphs/guillemetleft.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/guillemetleft.glif
@@ -1,25 +1,25 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guillemetleft" format="2">
-  <advance width="587"/>
+  <advance width="595"/>
   <unicode hex="00AB"/>
   <outline>
     <contour>
-      <point x="150" y="27" type="line"/>
-      <point x="319" y="27" type="line"/>
-      <point x="162" y="268" type="line"/>
-      <point x="162" y="221" type="line"/>
-      <point x="312" y="453" type="line"/>
-      <point x="154" y="453" type="line"/>
-      <point x="7" y="242" type="line"/>
+      <point x="158" y="27" type="line"/>
+      <point x="328" y="27" type="line"/>
+      <point x="161" y="268" type="line"/>
+      <point x="161" y="221" type="line"/>
+      <point x="320" y="453" type="line"/>
+      <point x="162" y="453" type="line"/>
+      <point x="6" y="242" type="line"/>
     </contour>
     <contour>
-      <point x="412" y="27" type="line"/>
-      <point x="581" y="27" type="line"/>
-      <point x="424" y="268" type="line"/>
-      <point x="424" y="221" type="line"/>
-      <point x="574" y="453" type="line"/>
-      <point x="416" y="453" type="line"/>
-      <point x="269" y="242" type="line"/>
+      <point x="420" y="27" type="line"/>
+      <point x="590" y="27" type="line"/>
+      <point x="423" y="268" type="line"/>
+      <point x="423" y="221" type="line"/>
+      <point x="583" y="453" type="line"/>
+      <point x="424" y="453" type="line"/>
+      <point x="268" y="242" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/guillemetright.glif 
b/src/Cantarell-Bold.ufo/glyphs/guillemetright.glif
index 87e1d15f..2a665694 100644
--- a/src/Cantarell-Bold.ufo/glyphs/guillemetright.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/guillemetright.glif
@@ -1,25 +1,33 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guillemetright" format="2">
-  <advance width="578"/>
+  <advance width="595"/>
   <unicode hex="00BB"/>
   <outline>
     <contour>
-      <point x="266" y="27" type="line"/>
-      <point x="424" y="27" type="line"/>
-      <point x="571" y="242" type="line"/>
-      <point x="427" y="453" type="line"/>
-      <point x="258" y="453" type="line"/>
-      <point x="416" y="214" type="line"/>
-      <point x="416" y="261" type="line"/>
+      <point x="274" y="27" type="line"/>
+      <point x="433" y="27" type="line"/>
+      <point x="589" y="242" type="line"/>
+      <point x="436" y="453" type="line"/>
+      <point x="266" y="453" type="line"/>
+      <point x="434" y="214" type="line"/>
+      <point x="434" y="261" type="line"/>
     </contour>
     <contour>
-      <point x="14" y="27" type="line"/>
-      <point x="172" y="27" type="line"/>
-      <point x="319" y="242" type="line"/>
-      <point x="175" y="453" type="line"/>
-      <point x="6" y="453" type="line"/>
-      <point x="164" y="214" type="line"/>
-      <point x="164" y="261" type="line"/>
+      <point x="12" y="27" type="line"/>
+      <point x="171" y="27" type="line"/>
+      <point x="327" y="242" type="line"/>
+      <point x="174" y="453" type="line"/>
+      <point x="4" y="453" type="line"/>
+      <point x="172" y="214" type="line"/>
+      <point x="172" y="261" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|guillemetleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>guillemetleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/guilsinglleft.glif 
b/src/Cantarell-Bold.ufo/glyphs/guilsinglleft.glif
index 6dd10553..88459db9 100644
--- a/src/Cantarell-Bold.ufo/glyphs/guilsinglleft.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/guilsinglleft.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guilsinglleft" format="2">
-  <advance width="353"/>
+  <advance width="369"/>
   <unicode hex="2039"/>
   <outline>
     <contour>
-      <point x="151" y="26" type="line"/>
-      <point x="347" y="26" type="line"/>
-      <point x="189" y="269" type="line"/>
-      <point x="189" y="219" type="line"/>
-      <point x="339" y="453" type="line"/>
-      <point x="155" y="453" type="line"/>
-      <point x="7" y="242" type="line"/>
+      <point x="170" y="26" type="line"/>
+      <point x="366" y="26" type="line"/>
+      <point x="185" y="269" type="line"/>
+      <point x="185" y="219" type="line"/>
+      <point x="358" y="453" type="line"/>
+      <point x="175" y="453" type="line"/>
+      <point x="5" y="242" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/guilsinglright.glif 
b/src/Cantarell-Bold.ufo/glyphs/guilsinglright.glif
index 7566a3c2..313dc270 100644
--- a/src/Cantarell-Bold.ufo/glyphs/guilsinglright.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/guilsinglright.glif
@@ -1,16 +1,24 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guilsinglright" format="2">
-  <advance width="354"/>
+  <advance width="369"/>
   <unicode hex="203A"/>
   <outline>
     <contour>
-      <point x="14" y="26" type="line"/>
-      <point x="199" y="26" type="line"/>
-      <point x="347" y="242" type="line"/>
-      <point x="203" y="453" type="line"/>
-      <point x="6" y="453" type="line"/>
-      <point x="165" y="212" type="line"/>
-      <point x="165" y="262" type="line"/>
+      <point x="12" y="26" type="line"/>
+      <point x="196" y="26" type="line"/>
+      <point x="364" y="242" type="line"/>
+      <point x="199" y="453" type="line"/>
+      <point x="3" y="453" type="line"/>
+      <point x="185" y="212" type="line"/>
+      <point x="185" y="262" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|guilsinglleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>guilsinglleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/hyphen.glif b/src/Cantarell-Bold.ufo/glyphs/hyphen.glif
index f9757400..75cb9e2c 100644
--- a/src/Cantarell-Bold.ufo/glyphs/hyphen.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/hyphen.glif
@@ -1,13 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="hyphen" format="2">
-  <advance width="398"/>
+  <advance width="386"/>
   <unicode hex="002D"/>
+  <unicode hex="00AD"/>
+  <unicode hex="2010"/>
+  <unicode hex="2011"/>
   <outline>
     <contour>
-      <point x="54" y="189" type="line"/>
-      <point x="344" y="189" type="line"/>
-      <point x="344" y="329" type="line"/>
-      <point x="54" y="329" type="line"/>
+      <point x="43" y="191" type="line"/>
+      <point x="343" y="191" type="line"/>
+      <point x="343" y="331" type="line"/>
+      <point x="43" y="331" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/layerinfo.plist b/src/Cantarell-Bold.ufo/glyphs/layerinfo.plist
index c8bca26b..10f92e3b 100644
--- a/src/Cantarell-Bold.ufo/glyphs/layerinfo.plist
+++ b/src/Cantarell-Bold.ufo/glyphs/layerinfo.plist
@@ -1280,8 +1280,6 @@
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hookabovecomb.loclVIET</key>
       <integer>1</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.horizontalbar</key>
-      <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.horncomb</key>
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hryvnia</key>
@@ -1294,8 +1292,6 @@
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hyphen</key>
       <integer>1</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.hyphentwo</key>
-      <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.i</key>
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.i-cy</key>
@@ -1514,8 +1510,6 @@
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.nlinebelow</key>
       <integer>1</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.nonbreakinghyphen</key>
-      <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.notequal</key>
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.notequal.tf</key>
@@ -1856,8 +1850,6 @@
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.slashshortcomb.case</key>
       <integer>1</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.softhyphen</key>
-      <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.softsign-cy</key>
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.space</key>
diff --git a/src/Cantarell-Bold.ufo/glyphs/leftanglebracket-math.glif 
b/src/Cantarell-Bold.ufo/glyphs/leftanglebracket-math.glif
index 929d7e19..e0573503 100644
--- a/src/Cantarell-Bold.ufo/glyphs/leftanglebracket-math.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/leftanglebracket-math.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="leftanglebracket-math" format="2">
-  <advance width="322"/>
+  <advance width="336"/>
   <unicode hex="27E8"/>
   <outline>
     <contour>
-      <point x="138" y="-10" type="line"/>
-      <point x="311" y="-10" type="line"/>
-      <point x="164" y="398" type="line"/>
-      <point x="164" y="351" type="line"/>
-      <point x="314" y="739" type="line"/>
-      <point x="156" y="739" type="line"/>
-      <point x="9" y="364" type="line"/>
+      <point x="156" y="-10" type="line"/>
+      <point x="330" y="-10" type="line"/>
+      <point x="160" y="398" type="line"/>
+      <point x="160" y="351" type="line"/>
+      <point x="331" y="739" type="line"/>
+      <point x="173" y="739" type="line"/>
+      <point x="6" y="364" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/numbersign.glif b/src/Cantarell-Bold.ufo/glyphs/numbersign.glif
index 38de223e..0919bf25 100644
--- a/src/Cantarell-Bold.ufo/glyphs/numbersign.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/numbersign.glif
@@ -1,31 +1,31 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="numbersign" format="2">
-  <advance width="689"/>
+  <advance width="696"/>
   <unicode hex="0023"/>
   <outline>
     <contour>
-      <point x="414" y="0" type="line"/>
-      <point x="574" y="0" type="line"/>
-      <point x="574" y="694" type="line"/>
-      <point x="414" y="694" type="line"/>
+      <point x="400" y="0" type="line"/>
+      <point x="550" y="0" type="line"/>
+      <point x="595" y="694" type="line"/>
+      <point x="445" y="694" type="line"/>
     </contour>
     <contour>
-      <point x="22" y="151" type="line"/>
-      <point x="667" y="151" type="line"/>
-      <point x="667" y="276" type="line"/>
-      <point x="22" y="276" type="line"/>
+      <point x="14" y="139" type="line"/>
+      <point x="663" y="139" type="line"/>
+      <point x="663" y="288" type="line"/>
+      <point x="14" y="288" type="line"/>
     </contour>
     <contour>
-      <point x="120" y="0" type="line"/>
-      <point x="281" y="0" type="line"/>
-      <point x="281" y="694" type="line"/>
-      <point x="120" y="694" type="line"/>
+      <point x="104" y="0" type="line"/>
+      <point x="255" y="0" type="line"/>
+      <point x="300" y="694" type="line"/>
+      <point x="149" y="694" type="line"/>
     </contour>
     <contour>
-      <point x="22" y="421" type="line"/>
-      <point x="667" y="421" type="line"/>
-      <point x="667" y="546" type="line"/>
-      <point x="22" y="546" type="line"/>
+      <point x="33" y="409" type="line"/>
+      <point x="682" y="409" type="line"/>
+      <point x="682" y="558" type="line"/>
+      <point x="33" y="558" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/period.glif b/src/Cantarell-Bold.ufo/glyphs/period.glif
index 9464e30f..be055228 100644
--- a/src/Cantarell-Bold.ufo/glyphs/period.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/period.glif
@@ -1,21 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="period" format="2">
-  <advance width="282"/>
+  <advance width="270"/>
   <unicode hex="002E"/>
   <outline>
     <contour>
-      <point x="141" y="-10" type="curve" smooth="yes"/>
-      <point x="205" y="-10"/>
-      <point x="247" y="36"/>
-      <point x="247" y="96" type="curve" smooth="yes"/>
-      <point x="247" y="160"/>
-      <point x="205" y="206"/>
-      <point x="141" y="206" type="curve" smooth="yes"/>
-      <point x="77" y="206"/>
-      <point x="35" y="160"/>
-      <point x="35" y="96" type="curve" smooth="yes"/>
-      <point x="35" y="36"/>
-      <point x="77" y="-10"/>
+      <point x="135" y="-10" type="curve" smooth="yes"/>
+      <point x="199" y="-10"/>
+      <point x="241" y="36"/>
+      <point x="241" y="96" type="curve" smooth="yes"/>
+      <point x="241" y="160"/>
+      <point x="199" y="206"/>
+      <point x="135" y="206" type="curve" smooth="yes"/>
+      <point x="71" y="206"/>
+      <point x="29" y="160"/>
+      <point x="29" y="96" type="curve" smooth="yes"/>
+      <point x="29" y="36"/>
+      <point x="71" y="-10"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/periodcentered.loclC_A_T_.glif 
b/src/Cantarell-Bold.ufo/glyphs/periodcentered.loclC_A_T_.glif
index 0f69ef5d..28f652dc 100644
--- a/src/Cantarell-Bold.ufo/glyphs/periodcentered.loclC_A_T_.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/periodcentered.loclC_A_T_.glif
@@ -3,18 +3,18 @@
   <anchor x="0" y="355" name="_periodcentered"/>
   <outline>
     <contour>
-      <point x="-24" y="304" type="curve" smooth="yes"/>
-      <point x="16" y="304"/>
-      <point x="42" y="331"/>
-      <point x="42" y="371" type="curve" smooth="yes"/>
-      <point x="42" y="413"/>
-      <point x="16" y="440"/>
-      <point x="-24" y="440" type="curve" smooth="yes"/>
-      <point x="-64" y="440"/>
-      <point x="-91" y="413"/>
-      <point x="-91" y="371" type="curve" smooth="yes"/>
-      <point x="-91" y="331"/>
-      <point x="-64" y="304"/>
+      <point x="-20" y="304" type="curve" smooth="yes"/>
+      <point x="20" y="304"/>
+      <point x="46" y="331"/>
+      <point x="46" y="371" type="curve" smooth="yes"/>
+      <point x="46" y="413"/>
+      <point x="20" y="440"/>
+      <point x="-20" y="440" type="curve" smooth="yes"/>
+      <point x="-60" y="440"/>
+      <point x="-87" y="413"/>
+      <point x="-87" y="371" type="curve" smooth="yes"/>
+      <point x="-87" y="331"/>
+      <point x="-60" y="304"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/questiondown.glif b/src/Cantarell-Bold.ufo/glyphs/questiondown.glif
index 5e4ba78d..a2b6f57a 100644
--- a/src/Cantarell-Bold.ufo/glyphs/questiondown.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/questiondown.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="questiondown" format="2">
-  <advance width="417"/>
+  <advance width="441"/>
   <unicode hex="00BF"/>
   <outline>
-    <component base="question" xScale="-1" yScale="-1" xOffset="431" yOffset="479"/>
+    <component base="question" xScale="-1" yScale="-1" xOffset="441" yOffset="479"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>question</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/quotedbl.glif b/src/Cantarell-Bold.ufo/glyphs/quotedbl.glif
index 8b071139..8bafee5e 100644
--- a/src/Cantarell-Bold.ufo/glyphs/quotedbl.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/quotedbl.glif
@@ -6,4 +6,12 @@
     <component base="quotesingle"/>
     <component base="quotesingle" xOffset="230"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quotesingle</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quotesingle</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/quotedblbase.glif b/src/Cantarell-Bold.ufo/glyphs/quotedblbase.glif
index 29ce8997..02a941fa 100644
--- a/src/Cantarell-Bold.ufo/glyphs/quotedblbase.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/quotedblbase.glif
@@ -1,13 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblbase" format="2">
-  <advance width="531"/>
+  <advance width="522"/>
   <unicode hex="201E"/>
   <outline>
-    <component base="_typoquote" xOffset="202"/>
-    <component base="_typoquote" xOffset="-38"/>
+    <component base="_typoquote" xOffset="190"/>
+    <component base="_typoquote" xOffset="-55"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteright</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Bold.ufo/glyphs/quotedblleft.glif b/src/Cantarell-Bold.ufo/glyphs/quotedblleft.glif
index de43b4db..291d623e 100644
--- a/src/Cantarell-Bold.ufo/glyphs/quotedblleft.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/quotedblleft.glif
@@ -1,9 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblleft" format="2">
-  <advance width="545"/>
+  <advance width="522"/>
   <unicode hex="201C"/>
   <outline>
     <component base="quoteleft" xOffset="245"/>
     <component base="quoteleft"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/quotedblright.glif 
b/src/Cantarell-Bold.ufo/glyphs/quotedblright.glif
index 98ebfdd9..6baf4221 100644
--- a/src/Cantarell-Bold.ufo/glyphs/quotedblright.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/quotedblright.glif
@@ -1,9 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblright" format="2">
-  <advance width="531"/>
+  <advance width="522"/>
   <unicode hex="201D"/>
   <outline>
-    <component base="quoteright" xOffset="240" yOffset="-1"/>
+    <component base="quoteright" xOffset="245" yOffset="-1"/>
     <component base="quoteright" yOffset="-1"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteright</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/quoteleft.glif b/src/Cantarell-Bold.ufo/glyphs/quoteleft.glif
index a3f1663a..74493abb 100644
--- a/src/Cantarell-Bold.ufo/glyphs/quoteleft.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/quoteleft.glif
@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quoteleft" format="2">
-  <advance width="300"/>
+  <advance width="277"/>
   <unicode hex="2018"/>
   <outline>
-    <component base="_typoquote" xScale="-1" yScale="-1" xOffset="339" yOffset="585"/>
+    <component base="_typoquote" xScale="-1" yScale="-1" xOffset="332" yOffset="585"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Bold.ufo/glyphs/quoteright.glif b/src/Cantarell-Bold.ufo/glyphs/quoteright.glif
index d263ed28..7d2327a2 100644
--- a/src/Cantarell-Bold.ufo/glyphs/quoteright.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/quoteright.glif
@@ -1,12 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quoteright" format="2">
-  <advance width="291"/>
+  <advance width="277"/>
   <unicode hex="2019"/>
   <outline>
-    <component base="_typoquote" xOffset="-38" yOffset="631"/>
+    <component base="_typoquote" xOffset="-55" yOffset="631"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|quoteleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>quoteleft</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Bold.ufo/glyphs/quotesinglbase.glif 
b/src/Cantarell-Bold.ufo/glyphs/quotesinglbase.glif
index 834a4bfa..856efe31 100644
--- a/src/Cantarell-Bold.ufo/glyphs/quotesinglbase.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/quotesinglbase.glif
@@ -1,12 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotesinglbase" format="2">
-  <advance width="291"/>
+  <advance width="277"/>
   <unicode hex="201A"/>
   <outline>
-    <component base="_typoquote" xOffset="-38"/>
+    <component base="_typoquote" xOffset="-55"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>quoteleft</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Bold.ufo/glyphs/rightanglebracket-math.glif 
b/src/Cantarell-Bold.ufo/glyphs/rightanglebracket-math.glif
index 17e8b83a..86a83b70 100644
--- a/src/Cantarell-Bold.ufo/glyphs/rightanglebracket-math.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/rightanglebracket-math.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="rightanglebracket-math" format="2">
-  <advance width="320"/>
+  <advance width="334"/>
   <unicode hex="27E9"/>
   <outline>
     <contour>
-      <point x="14" y="-10" type="line"/>
-      <point x="182" y="-10" type="line"/>
-      <point x="310" y="362" type="line"/>
-      <point x="175" y="739" type="line"/>
-      <point x="6" y="739" type="line"/>
-      <point x="164" y="334" type="line"/>
-      <point x="164" y="381" type="line"/>
+      <point x="12" y="-10" type="line"/>
+      <point x="180" y="-10" type="line"/>
+      <point x="327" y="362" type="line"/>
+      <point x="173" y="739" type="line"/>
+      <point x="3" y="739" type="line"/>
+      <point x="181" y="334" type="line"/>
+      <point x="181" y="381" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/glyphs/semicolon.glif b/src/Cantarell-Bold.ufo/glyphs/semicolon.glif
index cf010836..286b980d 100644
--- a/src/Cantarell-Bold.ufo/glyphs/semicolon.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/semicolon.glif
@@ -1,10 +1,10 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="semicolon" format="2">
-  <advance width="282"/>
+  <advance width="270"/>
   <unicode hex="003B"/>
   <outline>
-    <component base="comma" xOffset="-4"/>
-    <component base="period" xOffset="-7" yOffset="284"/>
+    <component base="comma"/>
+    <component base="period" yOffset="284"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Bold.ufo/glyphs/underscore.glif b/src/Cantarell-Bold.ufo/glyphs/underscore.glif
index 2915bb4e..53292f64 100644
--- a/src/Cantarell-Bold.ufo/glyphs/underscore.glif
+++ b/src/Cantarell-Bold.ufo/glyphs/underscore.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="underscore" format="2">
-  <advance width="558"/>
+  <advance width="500"/>
   <unicode hex="005F"/>
   <outline>
     <contour>
-      <point x="54" y="-148" type="line"/>
-      <point x="504" y="-148" type="line"/>
-      <point x="504" y="0" type="line"/>
-      <point x="54" y="0" type="line"/>
+      <point x="-10" y="-198" type="line"/>
+      <point x="510" y="-198" type="line"/>
+      <point x="510" y="-50" type="line"/>
+      <point x="-10" y="-50" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Bold.ufo/lib.plist b/src/Cantarell-Bold.ufo/lib.plist
index 8bac9b4a..9ccef482 100644
--- a/src/Cantarell-Bold.ufo/lib.plist
+++ b/src/Cantarell-Bold.ufo/lib.plist
@@ -2092,13 +2092,9 @@
       <string>bracketleft</string>
       <string>bracketright</string>
       <string>hyphen</string>
-      <string>softhyphen</string>
       <string>endash</string>
       <string>emdash</string>
       <string>figuredash</string>
-      <string>horizontalbar</string>
-      <string>hyphentwo</string>
-      <string>nonbreakinghyphen</string>
       <string>underscore</string>
       <string>quotesinglbase</string>
       <string>quotedblbase</string>
@@ -3120,8 +3116,6 @@
       <string>uni1E2B</string>
       <key>hdotbelow</key>
       <string>uni1E25</string>
-      <key>horizontalbar</key>
-      <string>uni2015</string>
       <key>horncomb</key>
       <string>uni031B</string>
       <key>hryvnia</key>
@@ -3130,8 +3124,6 @@
       <string>uni030B</string>
       <key>hungarumlautcomb.case</key>
       <string>uni030B.case</string>
-      <key>hyphentwo</key>
-      <string>uni2010</string>
       <key>i-cy</key>
       <string>uni0456</string>
       <key>ia-cy</key>
@@ -3262,8 +3254,6 @@
       <string>uni045A</string>
       <key>nlinebelow</key>
       <string>uni1E49</string>
-      <key>nonbreakinghyphen</key>
-      <string>uni2011</string>
       <key>notidentical</key>
       <string>uni2262</string>
       <key>notidentical.tf</key>
@@ -3438,8 +3428,6 @@
       <string>uni0337</string>
       <key>slashshortcomb.case</key>
       <string>uni0337.case</string>
-      <key>softhyphen</key>
-      <string>uni00AD</string>
       <key>softsign-cy</key>
       <string>uni044C</string>
       <key>strokelongcomb</key>
diff --git a/src/Cantarell-Light.ufo/glyphs/_typoquote.glif b/src/Cantarell-Light.ufo/glyphs/_typoquote.glif
index 5187e624..4a2fdd15 100644
--- a/src/Cantarell-Light.ufo/glyphs/_typoquote.glif
+++ b/src/Cantarell-Light.ufo/glyphs/_typoquote.glif
@@ -5,12 +5,12 @@
     <contour>
       <point x="89" y="-153" type="curve"/>
       <point x="106" y="-153" type="line"/>
-      <point x="139" y="-94"/>
-      <point x="164" y="17"/>
+      <point x="141" y="-91"/>
+      <point x="164" y="14"/>
       <point x="164" y="108" type="curve"/>
       <point x="144" y="108" type="line"/>
-      <point x="144" y="18"/>
-      <point x="120" y="-93"/>
+      <point x="144" y="15"/>
+      <point x="122" y="-89"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/backslash.glif b/src/Cantarell-Light.ufo/glyphs/backslash.glif
index f47b6f94..60bdba31 100644
--- a/src/Cantarell-Light.ufo/glyphs/backslash.glif
+++ b/src/Cantarell-Light.ufo/glyphs/backslash.glif
@@ -3,6 +3,14 @@
   <advance width="293"/>
   <unicode hex="005C"/>
   <outline>
-    <component base="slash" xScale="-1" xOffset="302"/>
+    <component base="slash" xScale="-1" xOffset="293"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|slash</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>slash</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/bar.glif b/src/Cantarell-Light.ufo/glyphs/bar.glif
index 7b8c0d19..bb172ec3 100644
--- a/src/Cantarell-Light.ufo/glyphs/bar.glif
+++ b/src/Cantarell-Light.ufo/glyphs/bar.glif
@@ -1,13 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bar" format="2">
-  <advance width="307"/>
+  <advance width="227"/>
   <unicode hex="007C"/>
   <outline>
     <contour>
-      <point x="144" y="-157" type="line"/>
-      <point x="163" y="-157" type="line"/>
-      <point x="163" y="739" type="line"/>
-      <point x="144" y="739" type="line"/>
+      <point x="104" y="-180" type="line"/>
+      <point x="123" y="-180" type="line"/>
+      <point x="123" y="739" type="line"/>
+      <point x="104" y="739" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>I</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>I</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/braceleft.glif b/src/Cantarell-Light.ufo/glyphs/braceleft.glif
index 65ac723b..834d3dfc 100644
--- a/src/Cantarell-Light.ufo/glyphs/braceleft.glif
+++ b/src/Cantarell-Light.ufo/glyphs/braceleft.glif
@@ -1,41 +1,41 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="braceleft" format="2">
-  <advance width="334"/>
+  <advance width="315"/>
   <unicode hex="007B"/>
   <outline>
     <contour>
-      <point x="296" y="-161" type="curve"/>
-      <point x="296" y="-144" type="line"/>
-      <point x="210" y="-144"/>
-      <point x="158" y="-100"/>
-      <point x="158" y="-25" type="curve" smooth="yes"/>
-      <point x="158" y="143" type="line" smooth="yes"/>
-      <point x="158" y="221"/>
-      <point x="118" y="288"/>
-      <point x="55" y="309" type="curve"/>
-      <point x="55" y="307" type="line"/>
-      <point x="120" y="326"/>
-      <point x="159" y="392"/>
-      <point x="159" y="467" type="curve" smooth="yes"/>
-      <point x="159" y="603" type="line" smooth="yes"/>
-      <point x="159" y="681"/>
-      <point x="210" y="727"/>
-      <point x="296" y="727" type="curve"/>
-      <point x="296" y="744" type="line"/>
-      <point x="197" y="744"/>
-      <point x="138" y="688"/>
-      <point x="138" y="593" type="curve" smooth="yes"/>
-      <point x="138" y="457" type="line" smooth="yes"/>
-      <point x="138" y="389"/>
-      <point x="98" y="334"/>
-      <point x="36" y="317" type="curve"/>
-      <point x="36" y="299" type="line"/>
-      <point x="98" y="280"/>
-      <point x="138" y="214"/>
-      <point x="138" y="133" type="curve" smooth="yes"/>
-      <point x="138" y="-35" type="line" smooth="yes"/>
-      <point x="138" y="-114"/>
-      <point x="197" y="-161"/>
+      <point x="277" y="-161" type="curve"/>
+      <point x="277" y="-144" type="line"/>
+      <point x="198" y="-144"/>
+      <point x="151" y="-100"/>
+      <point x="151" y="-25" type="curve" smooth="yes"/>
+      <point x="151" y="127" type="line" smooth="yes"/>
+      <point x="151" y="206"/>
+      <point x="113" y="272"/>
+      <point x="56" y="292" type="curve"/>
+      <point x="56" y="291" type="line"/>
+      <point x="114" y="309"/>
+      <point x="152" y="373"/>
+      <point x="152" y="451" type="curve" smooth="yes"/>
+      <point x="152" y="603" type="line" smooth="yes"/>
+      <point x="152" y="681"/>
+      <point x="198" y="727"/>
+      <point x="277" y="727" type="curve"/>
+      <point x="277" y="744" type="line"/>
+      <point x="185" y="744"/>
+      <point x="131" y="688"/>
+      <point x="131" y="593" type="curve" smooth="yes"/>
+      <point x="131" y="441" type="line" smooth="yes"/>
+      <point x="131" y="373"/>
+      <point x="94" y="318"/>
+      <point x="37" y="303" type="curve"/>
+      <point x="37" y="280" type="line"/>
+      <point x="93" y="267"/>
+      <point x="131" y="202"/>
+      <point x="131" y="117" type="curve" smooth="yes"/>
+      <point x="131" y="-35" type="line" smooth="yes"/>
+      <point x="131" y="-114"/>
+      <point x="185" y="-161"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/braceright.glif b/src/Cantarell-Light.ufo/glyphs/braceright.glif
index c2a60a15..fdbcab3e 100644
--- a/src/Cantarell-Light.ufo/glyphs/braceright.glif
+++ b/src/Cantarell-Light.ufo/glyphs/braceright.glif
@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="braceright" format="2">
-  <advance width="334"/>
+  <advance width="315"/>
   <unicode hex="007D"/>
   <outline>
-    <component base="braceleft" xScale="-1" yScale="-1" xOffset="334" yOffset="583"/>
+    <component base="braceleft" xScale="-1" yScale="-1" xOffset="315" yOffset="583"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Light.ufo/glyphs/brokenbar.glif b/src/Cantarell-Light.ufo/glyphs/brokenbar.glif
index bc2a267d..0cfe663b 100644
--- a/src/Cantarell-Light.ufo/glyphs/brokenbar.glif
+++ b/src/Cantarell-Light.ufo/glyphs/brokenbar.glif
@@ -1,19 +1,27 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="brokenbar" format="2">
-  <advance width="308"/>
+  <advance width="228"/>
   <unicode hex="00A6"/>
   <outline>
     <contour>
-      <point x="144" y="-157" type="line"/>
-      <point x="164" y="-157" type="line"/>
-      <point x="164" y="181" type="line"/>
-      <point x="144" y="181" type="line"/>
+      <point x="104" y="-181" type="line"/>
+      <point x="124" y="-181" type="line"/>
+      <point x="124" y="181" type="line"/>
+      <point x="104" y="181" type="line"/>
     </contour>
     <contour>
-      <point x="144" y="412" type="line"/>
-      <point x="164" y="412" type="line"/>
-      <point x="164" y="739" type="line"/>
-      <point x="144" y="739" type="line"/>
+      <point x="104" y="412" type="line"/>
+      <point x="124" y="412" type="line"/>
+      <point x="124" y="740" type="line"/>
+      <point x="104" y="740" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>I</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>I</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/bullet.glif b/src/Cantarell-Light.ufo/glyphs/bullet.glif
index 00ad2d5d..1665b58d 100644
--- a/src/Cantarell-Light.ufo/glyphs/bullet.glif
+++ b/src/Cantarell-Light.ufo/glyphs/bullet.glif
@@ -1,8 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bullet" format="2">
-  <advance width="270"/>
+  <advance width="252"/>
   <unicode hex="2022"/>
   <outline>
-    <component base="period" xScale="2" yScale="2" xOffset="-93" yOffset="252"/>
+    <contour>
+      <point x="126" y="309" type="curve" smooth="yes"/>
+      <point x="154" y="309"/>
+      <point x="172" y="329"/>
+      <point x="172" y="355" type="curve" smooth="yes"/>
+      <point x="172" y="383"/>
+      <point x="154" y="403"/>
+      <point x="126" y="403" type="curve" smooth="yes"/>
+      <point x="98" y="403"/>
+      <point x="80" y="383"/>
+      <point x="80" y="355" type="curve" smooth="yes"/>
+      <point x="80" y="329"/>
+      <point x="98" y="309"/>
+    </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/bulletoperator.glif 
b/src/Cantarell-Light.ufo/glyphs/bulletoperator.glif
index 992aed90..a7f20dc6 100644
--- a/src/Cantarell-Light.ufo/glyphs/bulletoperator.glif
+++ b/src/Cantarell-Light.ufo/glyphs/bulletoperator.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bulletoperator" format="2">
-  <advance width="338"/>
+  <advance width="196"/>
   <unicode hex="2219"/>
   <outline>
-    <component base="period" xScale="1.25716" yScale="1.25716" xOffset="26" yOffset="330"/>
+    <component base="period" yOffset="330"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>period</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/colon.glif b/src/Cantarell-Light.ufo/glyphs/colon.glif
index b2bdcfc8..f4e2b5b9 100644
--- a/src/Cantarell-Light.ufo/glyphs/colon.glif
+++ b/src/Cantarell-Light.ufo/glyphs/colon.glif
@@ -1,6 +1,6 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="colon" format="2">
-  <advance width="230"/>
+  <advance width="196"/>
   <unicode hex="003A"/>
   <outline>
     <component base="period"/>
diff --git a/src/Cantarell-Light.ufo/glyphs/comma.glif b/src/Cantarell-Light.ufo/glyphs/comma.glif
index acb74717..275f828d 100644
--- a/src/Cantarell-Light.ufo/glyphs/comma.glif
+++ b/src/Cantarell-Light.ufo/glyphs/comma.glif
@@ -1,17 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="comma" format="2">
-  <advance width="230"/>
+  <advance width="196"/>
   <unicode hex="002C"/>
   <outline>
     <contour>
-      <point x="68" y="-167" type="curve"/>
-      <point x="87" y="-167" type="line"/>
-      <point x="113" y="-96"/>
-      <point x="129" y="4"/>
-      <point x="129" y="103" type="curve"/>
-      <point x="106" y="103" type="line"/>
-      <point x="106" y="4"/>
-      <point x="92" y="-96"/>
+      <point x="51" y="-170" type="curve"/>
+      <point x="70" y="-170" type="line"/>
+      <point x="98" y="-95"/>
+      <point x="115" y="6"/>
+      <point x="115" y="103" type="curve"/>
+      <point x="91" y="103" type="line"/>
+      <point x="91" y="3"/>
+      <point x="76" y="-97"/>
     </contour>
   </outline>
   <lib>
diff --git a/src/Cantarell-Light.ufo/glyphs/contents.plist b/src/Cantarell-Light.ufo/glyphs/contents.plist
index 92dbbc54..d539a610 100644
--- a/src/Cantarell-Light.ufo/glyphs/contents.plist
+++ b/src/Cantarell-Light.ufo/glyphs/contents.plist
@@ -1276,8 +1276,6 @@
     <string>hookabovecomb.case.glif</string>
     <key>hookabovecomb.loclVIET</key>
     <string>hookabovecomb.loclV_I_E_T_.glif</string>
-    <key>horizontalbar</key>
-    <string>horizontalbar.glif</string>
     <key>horncomb</key>
     <string>horncomb.glif</string>
     <key>hryvnia</key>
@@ -1290,8 +1288,6 @@
     <string>hungarumlautcomb.case.glif</string>
     <key>hyphen</key>
     <string>hyphen.glif</string>
-    <key>hyphentwo</key>
-    <string>hyphentwo.glif</string>
     <key>i</key>
     <string>i.glif</string>
     <key>i-cy</key>
@@ -1510,8 +1506,6 @@
     <string>nje-cy.glif</string>
     <key>nlinebelow</key>
     <string>nlinebelow.glif</string>
-    <key>nonbreakinghyphen</key>
-    <string>nonbreakinghyphen.glif</string>
     <key>notequal</key>
     <string>notequal.glif</string>
     <key>notequal.tf</key>
@@ -1852,8 +1846,6 @@
     <string>slashshortcomb.glif</string>
     <key>slashshortcomb.case</key>
     <string>slashshortcomb.case.glif</string>
-    <key>softhyphen</key>
-    <string>softhyphen.glif</string>
     <key>softsign-cy</key>
     <string>softsign-cy.glif</string>
     <key>space</key>
diff --git a/src/Cantarell-Light.ufo/glyphs/ellipsis.glif b/src/Cantarell-Light.ufo/glyphs/ellipsis.glif
index a171e063..5ccc6ad1 100644
--- a/src/Cantarell-Light.ufo/glyphs/ellipsis.glif
+++ b/src/Cantarell-Light.ufo/glyphs/ellipsis.glif
@@ -1,10 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="ellipsis" format="2">
-  <advance width="630"/>
+  <advance width="1000"/>
   <unicode hex="2026"/>
   <outline>
-    <component base="period" xOffset="400"/>
-    <component base="period" xOffset="200"/>
-    <component base="period"/>
+    <component base="period" xOffset="736"/>
+    <component base="period" xOffset="402" yOffset="-1"/>
+    <component base="period" xOffset="68"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/emdash.glif b/src/Cantarell-Light.ufo/glyphs/emdash.glif
index 93deca68..7659c0b8 100644
--- a/src/Cantarell-Light.ufo/glyphs/emdash.glif
+++ b/src/Cantarell-Light.ufo/glyphs/emdash.glif
@@ -1,13 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="emdash" format="2">
-  <advance width="1192"/>
+  <advance width="1000"/>
   <unicode hex="2014"/>
+  <unicode hex="2015"/>
   <outline>
     <contour>
-      <point x="96" y="240" type="line"/>
-      <point x="1096" y="240" type="line"/>
-      <point x="1096" y="257" type="line"/>
-      <point x="96" y="257" type="line"/>
+      <point x="-10" y="240" type="line"/>
+      <point x="1010" y="240" type="line"/>
+      <point x="1010" y="257" type="line"/>
+      <point x="-10" y="257" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/endash.glif b/src/Cantarell-Light.ufo/glyphs/endash.glif
index c473d754..c827e077 100644
--- a/src/Cantarell-Light.ufo/glyphs/endash.glif
+++ b/src/Cantarell-Light.ufo/glyphs/endash.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="endash" format="2">
-  <advance width="692"/>
+  <advance width="500"/>
   <unicode hex="2013"/>
   <outline>
     <contour>
-      <point x="96" y="240" type="line"/>
-      <point x="596" y="240" type="line"/>
-      <point x="596" y="257" type="line"/>
-      <point x="96" y="257" type="line"/>
+      <point x="-10" y="240" type="line"/>
+      <point x="510" y="240" type="line"/>
+      <point x="510" y="257" type="line"/>
+      <point x="-10" y="257" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/exclamdown.glif b/src/Cantarell-Light.ufo/glyphs/exclamdown.glif
index cb71790c..533ea7f5 100644
--- a/src/Cantarell-Light.ufo/glyphs/exclamdown.glif
+++ b/src/Cantarell-Light.ufo/glyphs/exclamdown.glif
@@ -3,6 +3,12 @@
   <advance width="214"/>
   <unicode hex="00A1"/>
   <outline>
-    <component base="exclam" yScale="-1" xOffset="-5" yOffset="470"/>
+    <component base="exclam" yScale="-1" yOffset="470"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>exclam</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/figuredash.glif b/src/Cantarell-Light.ufo/glyphs/figuredash.glif
index 9219c463..14821fb9 100644
--- a/src/Cantarell-Light.ufo/glyphs/figuredash.glif
+++ b/src/Cantarell-Light.ufo/glyphs/figuredash.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="figuredash" format="2">
-  <advance width="792"/>
+  <advance width="656"/>
   <unicode hex="2012"/>
   <outline>
     <contour>
-      <point x="96" y="240" type="line"/>
-      <point x="696" y="240" type="line"/>
-      <point x="696" y="257" type="line"/>
-      <point x="96" y="257" type="line"/>
+      <point x="78" y="240" type="line"/>
+      <point x="578" y="240" type="line"/>
+      <point x="578" y="257" type="line"/>
+      <point x="78" y="257" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/figurespace.glif b/src/Cantarell-Light.ufo/glyphs/figurespace.glif
index 8513f6fc..ac02adab 100644
--- a/src/Cantarell-Light.ufo/glyphs/figurespace.glif
+++ b/src/Cantarell-Light.ufo/glyphs/figurespace.glif
@@ -1,7 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="figurespace" format="2">
-  <advance width="600"/>
+  <advance width="580"/>
   <unicode hex="2007"/>
   <outline>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>zero.tf</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/guillemetleft.glif 
b/src/Cantarell-Light.ufo/glyphs/guillemetleft.glif
index 32e11ea5..c1332bd0 100644
--- a/src/Cantarell-Light.ufo/glyphs/guillemetleft.glif
+++ b/src/Cantarell-Light.ufo/glyphs/guillemetleft.glif
@@ -1,24 +1,24 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guillemetleft" format="2">
-  <advance width="441"/>
+  <advance width="448"/>
   <unicode hex="00AB"/>
   <outline>
     <contour>
-      <point x="193" y="37" type="line"/>
-      <point x="217" y="37" type="line"/>
-      <point x="66" y="259" type="line"/>
-      <point x="68" y="244" type="line"/>
-      <point x="214" y="456" type="line"/>
-      <point x="194" y="456" type="line"/>
-      <point x="50" y="250" type="line"/>
+      <point x="201" y="37" type="line"/>
+      <point x="225" y="37" type="line"/>
+      <point x="65" y="259" type="line"/>
+      <point x="67" y="244" type="line"/>
+      <point x="222" y="456" type="line"/>
+      <point x="202" y="456" type="line"/>
+      <point x="49" y="250" type="line"/>
     </contour>
     <contour>
-      <point x="368" y="37" type="line"/>
-      <point x="392" y="37" type="line"/>
-      <point x="241" y="259" type="line"/>
-      <point x="243" y="244" type="line"/>
-      <point x="389" y="456" type="line"/>
-      <point x="369" y="456" type="line"/>
+      <point x="377" y="37" type="line"/>
+      <point x="401" y="37" type="line"/>
+      <point x="240" y="259" type="line"/>
+      <point x="242" y="244" type="line"/>
+      <point x="398" y="456" type="line"/>
+      <point x="378" y="456" type="line"/>
       <point x="225" y="250" type="line"/>
     </contour>
   </outline>
diff --git a/src/Cantarell-Light.ufo/glyphs/guillemetright.glif 
b/src/Cantarell-Light.ufo/glyphs/guillemetright.glif
index 8a795714..8ff31656 100644
--- a/src/Cantarell-Light.ufo/glyphs/guillemetright.glif
+++ b/src/Cantarell-Light.ufo/glyphs/guillemetright.glif
@@ -1,25 +1,33 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guillemetright" format="2">
-  <advance width="432"/>
+  <advance width="448"/>
   <unicode hex="00BB"/>
   <outline>
     <contour>
-      <point x="219" y="36" type="line"/>
-      <point x="239" y="36" type="line"/>
-      <point x="382" y="247" type="line"/>
-      <point x="239" y="455" type="line"/>
-      <point x="215" y="455" type="line"/>
-      <point x="366" y="238" type="line"/>
-      <point x="364" y="253" type="line"/>
+      <point x="226" y="36" type="line"/>
+      <point x="246" y="36" type="line"/>
+      <point x="399" y="247" type="line"/>
+      <point x="246" y="455" type="line"/>
+      <point x="222" y="455" type="line"/>
+      <point x="383" y="238" type="line"/>
+      <point x="381" y="253" type="line"/>
     </contour>
     <contour>
-      <point x="54" y="36" type="line"/>
-      <point x="74" y="36" type="line"/>
-      <point x="217" y="247" type="line"/>
-      <point x="74" y="455" type="line"/>
-      <point x="50" y="455" type="line"/>
-      <point x="201" y="238" type="line"/>
-      <point x="199" y="253" type="line"/>
+      <point x="51" y="36" type="line"/>
+      <point x="71" y="36" type="line"/>
+      <point x="224" y="247" type="line"/>
+      <point x="71" y="455" type="line"/>
+      <point x="47" y="455" type="line"/>
+      <point x="208" y="238" type="line"/>
+      <point x="206" y="253" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|guillemetleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>guillemetleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/guilsinglleft.glif 
b/src/Cantarell-Light.ufo/glyphs/guilsinglleft.glif
index e4013173..0287ab12 100644
--- a/src/Cantarell-Light.ufo/glyphs/guilsinglleft.glif
+++ b/src/Cantarell-Light.ufo/glyphs/guilsinglleft.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guilsinglleft" format="2">
-  <advance width="266"/>
+  <advance width="281"/>
   <unicode hex="2039"/>
   <outline>
     <contour>
-      <point x="193" y="32" type="line"/>
-      <point x="217" y="32" type="line"/>
-      <point x="66" y="254" type="line"/>
-      <point x="68" y="239" type="line"/>
-      <point x="214" y="451" type="line"/>
-      <point x="194" y="451" type="line"/>
-      <point x="50" y="245" type="line"/>
+      <point x="211" y="32" type="line"/>
+      <point x="235" y="32" type="line"/>
+      <point x="63" y="254" type="line"/>
+      <point x="66" y="239" type="line"/>
+      <point x="232" y="451" type="line"/>
+      <point x="212" y="451" type="line"/>
+      <point x="48" y="245" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/guilsinglright.glif 
b/src/Cantarell-Light.ufo/glyphs/guilsinglright.glif
index 1ab8d171..c6873d63 100644
--- a/src/Cantarell-Light.ufo/glyphs/guilsinglright.glif
+++ b/src/Cantarell-Light.ufo/glyphs/guilsinglright.glif
@@ -1,16 +1,24 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guilsinglright" format="2">
-  <advance width="267"/>
+  <advance width="281"/>
   <unicode hex="203A"/>
   <outline>
     <contour>
-      <point x="54" y="32" type="line"/>
-      <point x="74" y="32" type="line"/>
-      <point x="217" y="243" type="line"/>
-      <point x="74" y="451" type="line"/>
-      <point x="50" y="451" type="line"/>
-      <point x="201" y="234" type="line"/>
-      <point x="199" y="249" type="line"/>
+      <point x="50" y="32" type="line"/>
+      <point x="70" y="32" type="line"/>
+      <point x="233" y="243" type="line"/>
+      <point x="70" y="451" type="line"/>
+      <point x="46" y="451" type="line"/>
+      <point x="218" y="234" type="line"/>
+      <point x="215" y="249" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|guilsinglleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>guilsinglleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/hairspace.glif b/src/Cantarell-Light.ufo/glyphs/hairspace.glif
index beba6181..9f460d9a 100644
--- a/src/Cantarell-Light.ufo/glyphs/hairspace.glif
+++ b/src/Cantarell-Light.ufo/glyphs/hairspace.glif
@@ -1,6 +1,6 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="hairspace" format="2">
-  <advance width="98"/>
+  <advance width="100"/>
   <unicode hex="200A"/>
   <outline>
   </outline>
diff --git a/src/Cantarell-Light.ufo/glyphs/hyphen.glif b/src/Cantarell-Light.ufo/glyphs/hyphen.glif
index b6c04ce3..10797670 100644
--- a/src/Cantarell-Light.ufo/glyphs/hyphen.glif
+++ b/src/Cantarell-Light.ufo/glyphs/hyphen.glif
@@ -1,13 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="hyphen" format="2">
-  <advance width="462"/>
+  <advance width="420"/>
   <unicode hex="002D"/>
+  <unicode hex="00AD"/>
+  <unicode hex="2010"/>
+  <unicode hex="2011"/>
   <outline>
     <contour>
-      <point x="96" y="240" type="line"/>
-      <point x="366" y="240" type="line"/>
-      <point x="366" y="257" type="line"/>
-      <point x="96" y="257" type="line"/>
+      <point x="70" y="240" type="line"/>
+      <point x="350" y="240" type="line"/>
+      <point x="350" y="257" type="line"/>
+      <point x="70" y="257" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/layerinfo.plist b/src/Cantarell-Light.ufo/glyphs/layerinfo.plist
index 3b374f37..49a6f438 100644
--- a/src/Cantarell-Light.ufo/glyphs/layerinfo.plist
+++ b/src/Cantarell-Light.ufo/glyphs/layerinfo.plist
@@ -1280,8 +1280,6 @@
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hookabovecomb.loclVIET</key>
       <integer>2</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.horizontalbar</key>
-      <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.horncomb</key>
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hryvnia</key>
@@ -1294,8 +1292,6 @@
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hyphen</key>
       <integer>2</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.hyphentwo</key>
-      <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.i</key>
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.i-cy</key>
@@ -1514,8 +1510,6 @@
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.nlinebelow</key>
       <integer>2</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.nonbreakinghyphen</key>
-      <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.notequal</key>
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.notequal.tf</key>
@@ -1856,8 +1850,6 @@
       <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.slashshortcomb.case</key>
       <integer>2</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.softhyphen</key>
-      <integer>2</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.softsign-cy</key>
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.space</key>
diff --git a/src/Cantarell-Light.ufo/glyphs/leftanglebracket-math.glif 
b/src/Cantarell-Light.ufo/glyphs/leftanglebracket-math.glif
index 0f03df52..6aa7ed23 100644
--- a/src/Cantarell-Light.ufo/glyphs/leftanglebracket-math.glif
+++ b/src/Cantarell-Light.ufo/glyphs/leftanglebracket-math.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="leftanglebracket-math" format="2">
-  <advance width="266"/>
+  <advance width="282"/>
   <unicode hex="27E8"/>
   <outline>
     <contour>
-      <point x="197" y="-10" type="line"/>
-      <point x="219" y="-10" type="line"/>
-      <point x="65" y="389" type="line"/>
-      <point x="66" y="374" type="line"/>
-      <point x="213" y="739" type="line"/>
-      <point x="193" y="739" type="line"/>
-      <point x="49" y="380" type="line"/>
+      <point x="215" y="-10" type="line"/>
+      <point x="237" y="-10" type="line"/>
+      <point x="63" y="389" type="line"/>
+      <point x="64" y="374" type="line"/>
+      <point x="230" y="739" type="line"/>
+      <point x="210" y="739" type="line"/>
+      <point x="47" y="380" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/numbersign.glif b/src/Cantarell-Light.ufo/glyphs/numbersign.glif
index 77c14380..6ad9e4af 100644
--- a/src/Cantarell-Light.ufo/glyphs/numbersign.glif
+++ b/src/Cantarell-Light.ufo/glyphs/numbersign.glif
@@ -1,31 +1,31 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="numbersign" format="2">
-  <advance width="624"/>
+  <advance width="619"/>
   <unicode hex="0023"/>
   <outline>
     <contour>
-      <point x="418" y="0" type="line"/>
-      <point x="438" y="0" type="line"/>
-      <point x="438" y="694" type="line"/>
-      <point x="418" y="694" type="line"/>
+      <point x="391" y="0" type="line"/>
+      <point x="411" y="0" type="line"/>
+      <point x="459" y="694" type="line"/>
+      <point x="439" y="694" type="line"/>
     </contour>
     <contour>
-      <point x="39" y="206" type="line"/>
-      <point x="585" y="206" type="line"/>
-      <point x="585" y="222" type="line"/>
-      <point x="39" y="222" type="line"/>
+      <point x="27" y="205" type="line"/>
+      <point x="573" y="205" type="line"/>
+      <point x="573" y="223" type="line"/>
+      <point x="27" y="223" type="line"/>
     </contour>
     <contour>
-      <point x="189" y="0" type="line"/>
-      <point x="209" y="0" type="line"/>
-      <point x="209" y="694" type="line"/>
-      <point x="189" y="694" type="line"/>
+      <point x="162" y="0" type="line"/>
+      <point x="182" y="0" type="line"/>
+      <point x="230" y="694" type="line"/>
+      <point x="210" y="694" type="line"/>
     </contour>
     <contour>
-      <point x="39" y="476" type="line"/>
-      <point x="585" y="476" type="line"/>
-      <point x="585" y="492" type="line"/>
-      <point x="39" y="492" type="line"/>
+      <point x="46" y="475" type="line"/>
+      <point x="592" y="475" type="line"/>
+      <point x="592" y="493" type="line"/>
+      <point x="46" y="493" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/period.glif b/src/Cantarell-Light.ufo/glyphs/period.glif
index 94ccd988..2eb41b3e 100644
--- a/src/Cantarell-Light.ufo/glyphs/period.glif
+++ b/src/Cantarell-Light.ufo/glyphs/period.glif
@@ -1,21 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="period" format="2">
-  <advance width="230"/>
+  <advance width="196"/>
   <unicode hex="002E"/>
   <outline>
     <contour>
-      <point x="115" y="-10" type="curve" smooth="yes"/>
-      <point x="129" y="-10"/>
-      <point x="138" y="0"/>
-      <point x="138" y="13" type="curve" smooth="yes"/>
-      <point x="138" y="27"/>
-      <point x="129" y="37"/>
-      <point x="115" y="37" type="curve" smooth="yes"/>
-      <point x="101" y="37"/>
-      <point x="92" y="27"/>
-      <point x="92" y="13" type="curve" smooth="yes"/>
-      <point x="92" y="0"/>
-      <point x="101" y="-10"/>
+      <point x="98" y="-10" type="curve" smooth="yes"/>
+      <point x="112" y="-10"/>
+      <point x="121" y="0"/>
+      <point x="121" y="13" type="curve" smooth="yes"/>
+      <point x="121" y="27"/>
+      <point x="112" y="37"/>
+      <point x="98" y="37" type="curve" smooth="yes"/>
+      <point x="84" y="37"/>
+      <point x="75" y="27"/>
+      <point x="75" y="13" type="curve" smooth="yes"/>
+      <point x="75" y="0"/>
+      <point x="84" y="-10"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/questiondown.glif 
b/src/Cantarell-Light.ufo/glyphs/questiondown.glif
index bbda435b..71c5868a 100644
--- a/src/Cantarell-Light.ufo/glyphs/questiondown.glif
+++ b/src/Cantarell-Light.ufo/glyphs/questiondown.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="questiondown" format="2">
-  <advance width="367"/>
+  <advance width="416"/>
   <unicode hex="00BF"/>
   <outline>
-    <component base="question" xScale="-1" yScale="-1" xOffset="394" yOffset="479"/>
+    <component base="question" xScale="-1" yScale="-1" xOffset="408" yOffset="479"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>question</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/quotedbl.glif b/src/Cantarell-Light.ufo/glyphs/quotedbl.glif
index 3aaaf470..44ab230f 100644
--- a/src/Cantarell-Light.ufo/glyphs/quotedbl.glif
+++ b/src/Cantarell-Light.ufo/glyphs/quotedbl.glif
@@ -6,4 +6,12 @@
     <component base="quotesingle"/>
     <component base="quotesingle" xOffset="150"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quotesingle</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quotesingle</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/quotedblbase.glif 
b/src/Cantarell-Light.ufo/glyphs/quotedblbase.glif
index 74cbee4e..864ce68c 100644
--- a/src/Cantarell-Light.ufo/glyphs/quotedblbase.glif
+++ b/src/Cantarell-Light.ufo/glyphs/quotedblbase.glif
@@ -1,13 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblbase" format="2">
-  <advance width="373"/>
+  <advance width="342"/>
   <unicode hex="201E"/>
   <outline>
-    <component base="_typoquote" xOffset="122"/>
-    <component base="_typoquote" xOffset="-18"/>
+    <component base="_typoquote" xOffset="108"/>
+    <component base="_typoquote" xOffset="-38"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteright</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Light.ufo/glyphs/quotedblleft.glif 
b/src/Cantarell-Light.ufo/glyphs/quotedblleft.glif
index d9ce42c7..840da248 100644
--- a/src/Cantarell-Light.ufo/glyphs/quotedblleft.glif
+++ b/src/Cantarell-Light.ufo/glyphs/quotedblleft.glif
@@ -1,9 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblleft" format="2">
-  <advance width="377"/>
+  <advance width="342"/>
   <unicode hex="201C"/>
   <outline>
     <component base="quoteleft" xOffset="146"/>
     <component base="quoteleft"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/quotedblright.glif 
b/src/Cantarell-Light.ufo/glyphs/quotedblright.glif
index 05abff0b..820099a8 100644
--- a/src/Cantarell-Light.ufo/glyphs/quotedblright.glif
+++ b/src/Cantarell-Light.ufo/glyphs/quotedblright.glif
@@ -1,9 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblright" format="2">
-  <advance width="393"/>
+  <advance width="342"/>
   <unicode hex="201D"/>
   <outline>
-    <component base="quoteright" xOffset="140"/>
+    <component base="quoteright" xOffset="146"/>
     <component base="quoteright"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteright</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/quoteleft.glif b/src/Cantarell-Light.ufo/glyphs/quoteleft.glif
index 4780c756..6340cf8d 100644
--- a/src/Cantarell-Light.ufo/glyphs/quoteleft.glif
+++ b/src/Cantarell-Light.ufo/glyphs/quoteleft.glif
@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quoteleft" format="2">
-  <advance width="231"/>
+  <advance width="196"/>
   <unicode hex="2018"/>
   <outline>
-    <component base="_typoquote" xScale="-1" yScale="-1" xOffset="251" yOffset="591"/>
+    <component base="_typoquote" xScale="-1" yScale="-1" xOffset="234" yOffset="591"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Light.ufo/glyphs/quoteright.glif b/src/Cantarell-Light.ufo/glyphs/quoteright.glif
index 2df6f03a..168dff8d 100644
--- a/src/Cantarell-Light.ufo/glyphs/quoteright.glif
+++ b/src/Cantarell-Light.ufo/glyphs/quoteright.glif
@@ -1,12 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quoteright" format="2">
-  <advance width="233"/>
+  <advance width="196"/>
   <unicode hex="2019"/>
   <outline>
-    <component base="_typoquote" xOffset="-18" yOffset="636"/>
+    <component base="_typoquote" xOffset="-38" yOffset="636"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|quoteleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>quoteleft</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Light.ufo/glyphs/quotesinglbase.glif 
b/src/Cantarell-Light.ufo/glyphs/quotesinglbase.glif
index fab8431d..89c0d4a5 100644
--- a/src/Cantarell-Light.ufo/glyphs/quotesinglbase.glif
+++ b/src/Cantarell-Light.ufo/glyphs/quotesinglbase.glif
@@ -1,12 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotesinglbase" format="2">
-  <advance width="233"/>
+  <advance width="196"/>
   <unicode hex="201A"/>
   <outline>
-    <component base="_typoquote" xOffset="-18"/>
+    <component base="_typoquote" xOffset="-38"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>quoteleft</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Light.ufo/glyphs/rightanglebracket-math.glif 
b/src/Cantarell-Light.ufo/glyphs/rightanglebracket-math.glif
index f3395f2c..a10fbe74 100644
--- a/src/Cantarell-Light.ufo/glyphs/rightanglebracket-math.glif
+++ b/src/Cantarell-Light.ufo/glyphs/rightanglebracket-math.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="rightanglebracket-math" format="2">
-  <advance width="266"/>
+  <advance width="280"/>
   <unicode hex="27E9"/>
   <outline>
     <contour>
-      <point x="49" y="-10" type="line"/>
-      <point x="69" y="-10" type="line"/>
-      <point x="216" y="378" type="line"/>
-      <point x="72" y="739" type="line"/>
-      <point x="50" y="739" type="line"/>
-      <point x="201" y="369" type="line"/>
-      <point x="198" y="384" type="line"/>
+      <point x="46" y="-10" type="line"/>
+      <point x="66" y="-10" type="line"/>
+      <point x="233" y="378" type="line"/>
+      <point x="70" y="739" type="line"/>
+      <point x="47" y="739" type="line"/>
+      <point x="218" y="369" type="line"/>
+      <point x="215" y="384" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/glyphs/semicolon.glif b/src/Cantarell-Light.ufo/glyphs/semicolon.glif
index 84afcc92..7d024103 100644
--- a/src/Cantarell-Light.ufo/glyphs/semicolon.glif
+++ b/src/Cantarell-Light.ufo/glyphs/semicolon.glif
@@ -1,10 +1,10 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="semicolon" format="2">
-  <advance width="230"/>
+  <advance width="196"/>
   <unicode hex="003B"/>
   <outline>
-    <component base="comma" xOffset="-4"/>
-    <component base="period" xOffset="-16" yOffset="440"/>
+    <component base="comma"/>
+    <component base="period" yOffset="440"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Light.ufo/glyphs/underscore.glif b/src/Cantarell-Light.ufo/glyphs/underscore.glif
index c71fec7b..60563069 100644
--- a/src/Cantarell-Light.ufo/glyphs/underscore.glif
+++ b/src/Cantarell-Light.ufo/glyphs/underscore.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="underscore" format="2">
-  <advance width="620"/>
+  <advance width="500"/>
   <unicode hex="005F"/>
   <outline>
     <contour>
-      <point x="96" y="-17" type="line"/>
-      <point x="524" y="-17" type="line"/>
-      <point x="524" y="0" type="line"/>
-      <point x="96" y="0" type="line"/>
+      <point x="-10" y="-67" type="line"/>
+      <point x="510" y="-67" type="line"/>
+      <point x="510" y="-50" type="line"/>
+      <point x="-10" y="-50" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Light.ufo/lib.plist b/src/Cantarell-Light.ufo/lib.plist
index d2c55bb3..ee3fb46f 100644
--- a/src/Cantarell-Light.ufo/lib.plist
+++ b/src/Cantarell-Light.ufo/lib.plist
@@ -2092,13 +2092,9 @@
       <string>bracketleft</string>
       <string>bracketright</string>
       <string>hyphen</string>
-      <string>softhyphen</string>
       <string>endash</string>
       <string>emdash</string>
       <string>figuredash</string>
-      <string>horizontalbar</string>
-      <string>hyphentwo</string>
-      <string>nonbreakinghyphen</string>
       <string>underscore</string>
       <string>quotesinglbase</string>
       <string>quotedblbase</string>
@@ -3120,8 +3116,6 @@
       <string>uni1E2B</string>
       <key>hdotbelow</key>
       <string>uni1E25</string>
-      <key>horizontalbar</key>
-      <string>uni2015</string>
       <key>horncomb</key>
       <string>uni031B</string>
       <key>hryvnia</key>
@@ -3130,8 +3124,6 @@
       <string>uni030B</string>
       <key>hungarumlautcomb.case</key>
       <string>uni030B.case</string>
-      <key>hyphentwo</key>
-      <string>uni2010</string>
       <key>i-cy</key>
       <string>uni0456</string>
       <key>ia-cy</key>
@@ -3262,8 +3254,6 @@
       <string>uni045A</string>
       <key>nlinebelow</key>
       <string>uni1E49</string>
-      <key>nonbreakinghyphen</key>
-      <string>uni2011</string>
       <key>notidentical</key>
       <string>uni2262</string>
       <key>notidentical.tf</key>
@@ -3438,8 +3428,6 @@
       <string>uni0337</string>
       <key>slashshortcomb.case</key>
       <string>uni0337.case</string>
-      <key>softhyphen</key>
-      <string>uni00AD</string>
       <key>softsign-cy</key>
       <string>uni044C</string>
       <key>strokelongcomb</key>
diff --git a/src/Cantarell-Regular.ufo/glyphs/S_altillo.glif b/src/Cantarell-Regular.ufo/glyphs/S_altillo.glif
index f373f0e8..dd93270f 100644
--- a/src/Cantarell-Regular.ufo/glyphs/S_altillo.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/S_altillo.glif
@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="Saltillo" format="2">
-  <advance width="273"/>
+  <advance width="274"/>
   <unicode hex="A78B"/>
   <outline>
-    <component base="quotesingle" xScale="1.04" yScale="2.16474" xOffset="-7" yOffset="-808"/>
+    <component base="quotesingle" xScale="1.04" yScale="2.16474" xOffset="10" yOffset="-808"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Regular.ufo/glyphs/_typoquote.glif 
b/src/Cantarell-Regular.ufo/glyphs/_typoquote.glif
index 2fc46b86..b52dae4e 100644
--- a/src/Cantarell-Regular.ufo/glyphs/_typoquote.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/_typoquote.glif
@@ -5,12 +5,12 @@
     <contour>
       <point x="75" y="-160" type="curve"/>
       <point x="144" y="-160" type="line"/>
-      <point x="179" y="-90"/>
-      <point x="214" y="36"/>
+      <point x="186" y="-76"/>
+      <point x="214" y="34"/>
       <point x="214" y="115" type="curve"/>
       <point x="129" y="115" type="line"/>
-      <point x="129" y="38"/>
-      <point x="104" y="-88"/>
+      <point x="129" y="30"/>
+      <point x="107" y="-80"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/asterisk.glif b/src/Cantarell-Regular.ufo/glyphs/asterisk.glif
index 852e107d..afbfb9f5 100644
--- a/src/Cantarell-Regular.ufo/glyphs/asterisk.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/asterisk.glif
@@ -5,39 +5,39 @@
   <outline>
     <contour>
       <point x="242" y="475" type="line"/>
-      <point x="427" y="566" type="line"/>
-      <point x="390" y="627" type="line"/>
-      <point x="226" y="502" type="line"/>
+      <point x="431" y="561" type="line"/>
+      <point x="390" y="629" type="line"/>
+      <point x="226" y="503" type="line"/>
     </contour>
     <contour>
-      <point x="78" y="348" type="line"/>
+      <point x="79" y="345" type="line"/>
       <point x="243" y="473" type="line"/>
-      <point x="227" y="499" type="line"/>
-      <point x="41" y="408" type="line"/>
+      <point x="227" y="500" type="line"/>
+      <point x="38" y="411" type="line"/>
     </contour>
     <contour>
-      <point x="198" y="282" type="line"/>
-      <point x="269" y="282" type="line"/>
+      <point x="194" y="281" type="line"/>
+      <point x="274" y="281" type="line"/>
       <point x="251" y="488" type="line"/>
       <point x="219" y="488" type="line"/>
     </contour>
     <contour>
       <point x="227" y="475" type="line"/>
       <point x="244" y="501" type="line"/>
-      <point x="80" y="628" type="line"/>
-      <point x="43" y="568" type="line"/>
+      <point x="81" y="630" type="line"/>
+      <point x="40" y="565" type="line"/>
     </contour>
     <contour>
-      <point x="390" y="346" type="line"/>
-      <point x="427" y="406" type="line"/>
-      <point x="243" y="499" type="line"/>
+      <point x="390" y="343" type="line"/>
+      <point x="430" y="409" type="line"/>
+      <point x="243" y="500" type="line"/>
       <point x="226" y="472" type="line"/>
     </contour>
     <contour>
       <point x="219" y="488" type="line"/>
       <point x="251" y="488" type="line"/>
-      <point x="269" y="694" type="line"/>
-      <point x="198" y="694" type="line"/>
+      <point x="274" y="695" type="line"/>
+      <point x="194" y="695" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/backslash.glif b/src/Cantarell-Regular.ufo/glyphs/backslash.glif
index d25e20b9..2cbe6ba7 100644
--- a/src/Cantarell-Regular.ufo/glyphs/backslash.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/backslash.glif
@@ -1,8 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="backslash" format="2">
-  <advance width="357"/>
+  <advance width="338"/>
   <unicode hex="005C"/>
   <outline>
-    <component base="slash" xScale="-1" xOffset="357"/>
+    <component base="slash" xScale="-1" xOffset="338"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|slash</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>slash</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/bar.glif b/src/Cantarell-Regular.ufo/glyphs/bar.glif
index e5b1a6eb..fd1db36c 100644
--- a/src/Cantarell-Regular.ufo/glyphs/bar.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/bar.glif
@@ -1,13 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bar" format="2">
-  <advance width="327"/>
+  <advance width="261"/>
   <unicode hex="007C"/>
   <outline>
     <contour>
-      <point x="125" y="-159" type="line"/>
-      <point x="202" y="-159" type="line"/>
-      <point x="202" y="741" type="line"/>
-      <point x="125" y="741" type="line"/>
+      <point x="92" y="-180" type="line"/>
+      <point x="169" y="-180" type="line"/>
+      <point x="169" y="739" type="line"/>
+      <point x="92" y="739" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>I</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>I</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/braceleft.glif b/src/Cantarell-Regular.ufo/glyphs/braceleft.glif
index ba8780bc..da5978e5 100644
--- a/src/Cantarell-Regular.ufo/glyphs/braceleft.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/braceleft.glif
@@ -1,41 +1,41 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="braceleft" format="2">
-  <advance width="393"/>
+  <advance width="375"/>
   <unicode hex="007B"/>
   <outline>
     <contour>
-      <point x="353" y="-173" type="curve"/>
-      <point x="353" y="-104" type="line"/>
-      <point x="257" y="-104"/>
-      <point x="228" y="-72"/>
-      <point x="228" y="-21" type="curve" smooth="yes"/>
-      <point x="228" y="138" type="line" smooth="yes"/>
-      <point x="228" y="229"/>
-      <point x="187" y="291"/>
-      <point x="118" y="302" type="curve"/>
-      <point x="118" y="303" type="line"/>
-      <point x="182" y="319"/>
-      <point x="228" y="386"/>
-      <point x="228" y="462" type="curve" smooth="yes"/>
-      <point x="228" y="596" type="line" smooth="yes"/>
-      <point x="228" y="647"/>
-      <point x="255" y="680"/>
-      <point x="353" y="680" type="curve"/>
-      <point x="353" y="749" type="line"/>
-      <point x="199" y="749"/>
-      <point x="151" y="689"/>
-      <point x="151" y="587" type="curve" smooth="yes"/>
-      <point x="151" y="452" type="line" smooth="yes"/>
-      <point x="151" y="394"/>
-      <point x="102" y="337"/>
-      <point x="31" y="316" type="curve"/>
-      <point x="31" y="290" type="line"/>
-      <point x="109" y="265"/>
-      <point x="151" y="202"/>
-      <point x="151" y="128" type="curve" smooth="yes"/>
-      <point x="151" y="-32" type="line" smooth="yes"/>
-      <point x="151" y="-114"/>
-      <point x="195" y="-173"/>
+      <point x="335" y="-173" type="curve"/>
+      <point x="335" y="-104" type="line"/>
+      <point x="256" y="-104"/>
+      <point x="219" y="-78"/>
+      <point x="219" y="-21" type="curve" smooth="yes"/>
+      <point x="219" y="128" type="line" smooth="yes"/>
+      <point x="219" y="218"/>
+      <point x="182" y="281"/>
+      <point x="118" y="295" type="curve"/>
+      <point x="118" y="291" type="line"/>
+      <point x="180" y="310"/>
+      <point x="220" y="374"/>
+      <point x="220" y="452" type="curve" smooth="yes"/>
+      <point x="220" y="596" type="line" smooth="yes"/>
+      <point x="220" y="654"/>
+      <point x="256" y="680"/>
+      <point x="335" y="680" type="curve"/>
+      <point x="335" y="749" type="line"/>
+      <point x="203" y="749"/>
+      <point x="143" y="699"/>
+      <point x="143" y="587" type="curve" smooth="yes"/>
+      <point x="143" y="442" type="line" smooth="yes"/>
+      <point x="143" y="378"/>
+      <point x="101" y="330"/>
+      <point x="36" y="327" type="curve"/>
+      <point x="36" y="248" type="line"/>
+      <point x="106" y="245"/>
+      <point x="143" y="197"/>
+      <point x="143" y="118" type="curve" smooth="yes"/>
+      <point x="143" y="-32" type="line" smooth="yes"/>
+      <point x="143" y="-127"/>
+      <point x="206" y="-173"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/braceright.glif 
b/src/Cantarell-Regular.ufo/glyphs/braceright.glif
index 155728c4..ea360694 100644
--- a/src/Cantarell-Regular.ufo/glyphs/braceright.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/braceright.glif
@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="braceright" format="2">
-  <advance width="393"/>
+  <advance width="375"/>
   <unicode hex="007D"/>
   <outline>
-    <component base="braceleft" xScale="-1" yScale="-1" xOffset="393" yOffset="576"/>
+    <component base="braceleft" xScale="-1" yScale="-1" xOffset="375" yOffset="576"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Regular.ufo/glyphs/brokenbar.glif b/src/Cantarell-Regular.ufo/glyphs/brokenbar.glif
index 27f4354a..523f3fbc 100644
--- a/src/Cantarell-Regular.ufo/glyphs/brokenbar.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/brokenbar.glif
@@ -1,19 +1,27 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="brokenbar" format="2">
-  <advance width="329"/>
+  <advance width="263"/>
   <unicode hex="00A6"/>
   <outline>
     <contour>
-      <point x="125" y="-159" type="line"/>
-      <point x="204" y="-159" type="line"/>
-      <point x="204" y="181" type="line"/>
-      <point x="125" y="181" type="line"/>
+      <point x="92" y="-182" type="line"/>
+      <point x="171" y="-182" type="line"/>
+      <point x="171" y="181" type="line"/>
+      <point x="92" y="181" type="line"/>
     </contour>
     <contour>
-      <point x="125" y="412" type="line"/>
-      <point x="204" y="412" type="line"/>
-      <point x="204" y="741" type="line"/>
-      <point x="125" y="741" type="line"/>
+      <point x="92" y="412" type="line"/>
+      <point x="171" y="412" type="line"/>
+      <point x="171" y="741" type="line"/>
+      <point x="92" y="741" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>I</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>I</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/bullet.glif b/src/Cantarell-Regular.ufo/glyphs/bullet.glif
index 3399163f..d17fb7f4 100644
--- a/src/Cantarell-Regular.ufo/glyphs/bullet.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/bullet.glif
@@ -3,6 +3,19 @@
   <advance width="377"/>
   <unicode hex="2022"/>
   <outline>
-    <component base="period" xScale="2" yScale="2" xOffset="-84" yOffset="162"/>
+    <contour>
+      <point x="188" y="222" type="curve" smooth="yes"/>
+      <point x="264" y="222"/>
+      <point x="316" y="276"/>
+      <point x="316" y="350" type="curve" smooth="yes"/>
+      <point x="316" y="424"/>
+      <point x="264" y="478"/>
+      <point x="188" y="478" type="curve" smooth="yes"/>
+      <point x="112" y="478"/>
+      <point x="60" y="424"/>
+      <point x="60" y="350" type="curve" smooth="yes"/>
+      <point x="60" y="276"/>
+      <point x="112" y="222"/>
+    </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/bulletoperator.glif 
b/src/Cantarell-Regular.ufo/glyphs/bulletoperator.glif
index 03640150..71043927 100644
--- a/src/Cantarell-Regular.ufo/glyphs/bulletoperator.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/bulletoperator.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="bulletoperator" format="2">
-  <advance width="385"/>
+  <advance width="256"/>
   <unicode hex="2219"/>
   <outline>
-    <component base="period" xScale="1.25716" yScale="1.25716" xOffset="20" yOffset="280"/>
+    <component base="period" yOffset="280"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>period</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/colon.glif b/src/Cantarell-Regular.ufo/glyphs/colon.glif
index f2eeae45..8bd7a8f1 100644
--- a/src/Cantarell-Regular.ufo/glyphs/colon.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/colon.glif
@@ -1,6 +1,6 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="colon" format="2">
-  <advance width="272"/>
+  <advance width="256"/>
   <unicode hex="003A"/>
   <outline>
     <component base="period"/>
diff --git a/src/Cantarell-Regular.ufo/glyphs/comma.glif b/src/Cantarell-Regular.ufo/glyphs/comma.glif
index 973b3afa..824447ca 100644
--- a/src/Cantarell-Regular.ufo/glyphs/comma.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/comma.glif
@@ -1,17 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="comma" format="2">
-  <advance width="272"/>
+  <advance width="256"/>
   <unicode hex="002C"/>
   <outline>
     <contour>
-      <point x="62" y="-174" type="curve"/>
-      <point x="125" y="-174" type="line"/>
-      <point x="161" y="-84"/>
-      <point x="182" y="20"/>
-      <point x="182" y="107" type="curve"/>
-      <point x="99" y="107" type="line"/>
-      <point x="99" y="17"/>
-      <point x="85" y="-88"/>
+      <point x="48" y="-174" type="curve"/>
+      <point x="120" y="-174" type="line"/>
+      <point x="155" y="-87"/>
+      <point x="175" y="20"/>
+      <point x="175" y="119" type="curve"/>
+      <point x="88" y="119" type="line"/>
+      <point x="88" y="18"/>
+      <point x="73" y="-91"/>
     </contour>
   </outline>
   <lib>
diff --git a/src/Cantarell-Regular.ufo/glyphs/contents.plist b/src/Cantarell-Regular.ufo/glyphs/contents.plist
index 92dbbc54..d539a610 100644
--- a/src/Cantarell-Regular.ufo/glyphs/contents.plist
+++ b/src/Cantarell-Regular.ufo/glyphs/contents.plist
@@ -1276,8 +1276,6 @@
     <string>hookabovecomb.case.glif</string>
     <key>hookabovecomb.loclVIET</key>
     <string>hookabovecomb.loclV_I_E_T_.glif</string>
-    <key>horizontalbar</key>
-    <string>horizontalbar.glif</string>
     <key>horncomb</key>
     <string>horncomb.glif</string>
     <key>hryvnia</key>
@@ -1290,8 +1288,6 @@
     <string>hungarumlautcomb.case.glif</string>
     <key>hyphen</key>
     <string>hyphen.glif</string>
-    <key>hyphentwo</key>
-    <string>hyphentwo.glif</string>
     <key>i</key>
     <string>i.glif</string>
     <key>i-cy</key>
@@ -1510,8 +1506,6 @@
     <string>nje-cy.glif</string>
     <key>nlinebelow</key>
     <string>nlinebelow.glif</string>
-    <key>nonbreakinghyphen</key>
-    <string>nonbreakinghyphen.glif</string>
     <key>notequal</key>
     <string>notequal.glif</string>
     <key>notequal.tf</key>
@@ -1852,8 +1846,6 @@
     <string>slashshortcomb.glif</string>
     <key>slashshortcomb.case</key>
     <string>slashshortcomb.case.glif</string>
-    <key>softhyphen</key>
-    <string>softhyphen.glif</string>
     <key>softsign-cy</key>
     <string>softsign-cy.glif</string>
     <key>space</key>
diff --git a/src/Cantarell-Regular.ufo/glyphs/ellipsis.glif b/src/Cantarell-Regular.ufo/glyphs/ellipsis.glif
index 4d74adf5..46658b31 100644
--- a/src/Cantarell-Regular.ufo/glyphs/ellipsis.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/ellipsis.glif
@@ -1,10 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="ellipsis" format="2">
-  <advance width="674"/>
+  <advance width="1000"/>
   <unicode hex="2026"/>
   <outline>
-    <component base="period" xOffset="400"/>
-    <component base="period" xOffset="200"/>
-    <component base="period"/>
+    <component base="period" xOffset="705"/>
+    <component base="period" xOffset="372"/>
+    <component base="period" xOffset="39"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/emdash.glif b/src/Cantarell-Regular.ufo/glyphs/emdash.glif
index 440681aa..045b0ee3 100644
--- a/src/Cantarell-Regular.ufo/glyphs/emdash.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/emdash.glif
@@ -1,13 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="emdash" format="2">
-  <advance width="1166"/>
+  <advance width="1000"/>
   <unicode hex="2014"/>
+  <unicode hex="2015"/>
   <outline>
     <contour>
-      <point x="83" y="220" type="line"/>
-      <point x="1083" y="220" type="line"/>
-      <point x="1083" y="287" type="line"/>
-      <point x="83" y="287" type="line"/>
+      <point x="-10" y="220" type="line"/>
+      <point x="1010" y="220" type="line"/>
+      <point x="1010" y="287" type="line"/>
+      <point x="-10" y="287" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/endash.glif b/src/Cantarell-Regular.ufo/glyphs/endash.glif
index 06e2983d..3d77f335 100644
--- a/src/Cantarell-Regular.ufo/glyphs/endash.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/endash.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="endash" format="2">
-  <advance width="666"/>
+  <advance width="500"/>
   <unicode hex="2013"/>
   <outline>
     <contour>
-      <point x="83" y="220" type="line"/>
-      <point x="583" y="220" type="line"/>
-      <point x="583" y="287" type="line"/>
-      <point x="83" y="287" type="line"/>
+      <point x="-10" y="220" type="line"/>
+      <point x="510" y="220" type="line"/>
+      <point x="510" y="287" type="line"/>
+      <point x="-10" y="287" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/exclam.glif b/src/Cantarell-Regular.ufo/glyphs/exclam.glif
index 22ab7a87..de5e59cc 100644
--- a/src/Cantarell-Regular.ufo/glyphs/exclam.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/exclam.glif
@@ -1,27 +1,27 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="exclam" format="2">
-  <advance width="245"/>
+  <advance width="262"/>
   <unicode hex="0021"/>
   <outline>
     <contour>
-      <point x="90" y="201" type="line"/>
-      <point x="154" y="201" type="line"/>
-      <point x="164" y="694" type="line"/>
-      <point x="80" y="694" type="line"/>
+      <point x="99" y="201" type="line"/>
+      <point x="163" y="201" type="line"/>
+      <point x="173" y="694" type="line"/>
+      <point x="89" y="694" type="line"/>
     </contour>
     <contour>
-      <point x="123" y="-10" type="curve" smooth="yes"/>
-      <point x="161" y="-10"/>
-      <point x="187" y="17"/>
-      <point x="187" y="54" type="curve" smooth="yes"/>
-      <point x="187" y="91"/>
-      <point x="161" y="118"/>
-      <point x="123" y="118" type="curve" smooth="yes"/>
-      <point x="85" y="118"/>
-      <point x="59" y="91"/>
-      <point x="59" y="54" type="curve" smooth="yes"/>
-      <point x="59" y="17"/>
-      <point x="85" y="-10"/>
+      <point x="132" y="-10" type="curve" smooth="yes"/>
+      <point x="170" y="-10"/>
+      <point x="196" y="17"/>
+      <point x="196" y="54" type="curve" smooth="yes"/>
+      <point x="196" y="91"/>
+      <point x="170" y="118"/>
+      <point x="132" y="118" type="curve" smooth="yes"/>
+      <point x="94" y="118"/>
+      <point x="68" y="91"/>
+      <point x="68" y="54" type="curve" smooth="yes"/>
+      <point x="68" y="17"/>
+      <point x="94" y="-10"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/exclamdown.glif 
b/src/Cantarell-Regular.ufo/glyphs/exclamdown.glif
index 1f81cb07..25b3a122 100644
--- a/src/Cantarell-Regular.ufo/glyphs/exclamdown.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/exclamdown.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="exclamdown" format="2">
-  <advance width="246"/>
+  <advance width="262"/>
   <unicode hex="00A1"/>
   <outline>
-    <component base="exclam" yScale="-1" xOffset="1" yOffset="477"/>
+    <component base="exclam" yScale="-1" yOffset="477"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>exclam</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/figuredash.glif 
b/src/Cantarell-Regular.ufo/glyphs/figuredash.glif
index 59bdbb6b..b210d61d 100644
--- a/src/Cantarell-Regular.ufo/glyphs/figuredash.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/figuredash.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="figuredash" format="2">
-  <advance width="766"/>
+  <advance width="580"/>
   <unicode hex="2012"/>
   <outline>
     <contour>
-      <point x="83" y="220" type="line"/>
-      <point x="683" y="220" type="line"/>
-      <point x="683" y="287" type="line"/>
-      <point x="83" y="287" type="line"/>
+      <point x="40" y="220" type="line"/>
+      <point x="540" y="220" type="line"/>
+      <point x="540" y="287" type="line"/>
+      <point x="40" y="287" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/figurespace.glif 
b/src/Cantarell-Regular.ufo/glyphs/figurespace.glif
index 8513f6fc..ac02adab 100644
--- a/src/Cantarell-Regular.ufo/glyphs/figurespace.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/figurespace.glif
@@ -1,7 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="figurespace" format="2">
-  <advance width="600"/>
+  <advance width="580"/>
   <unicode hex="2007"/>
   <outline>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>zero.tf</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/guillemetleft.glif 
b/src/Cantarell-Regular.ufo/glyphs/guillemetleft.glif
index caac69e9..a50bfc93 100644
--- a/src/Cantarell-Regular.ufo/glyphs/guillemetleft.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/guillemetleft.glif
@@ -1,24 +1,24 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guillemetleft" format="2">
-  <advance width="530"/>
+  <advance width="538"/>
   <unicode hex="00AB"/>
   <outline>
     <contour>
-      <point x="185" y="30" type="line"/>
-      <point x="275" y="30" type="line"/>
-      <point x="119" y="268" type="line"/>
-      <point x="119" y="221" type="line"/>
-      <point x="270" y="452" type="line"/>
-      <point x="189" y="452" type="line"/>
-      <point x="45" y="242" type="line"/>
+      <point x="193" y="30" type="line"/>
+      <point x="283" y="30" type="line"/>
+      <point x="118" y="268" type="line"/>
+      <point x="118" y="221" type="line"/>
+      <point x="278" y="452" type="line"/>
+      <point x="197" y="452" type="line"/>
+      <point x="44" y="242" type="line"/>
     </contour>
     <contour>
-      <point x="397" y="30" type="line"/>
-      <point x="487" y="30" type="line"/>
-      <point x="331" y="268" type="line"/>
-      <point x="331" y="221" type="line"/>
-      <point x="482" y="452" type="line"/>
-      <point x="401" y="452" type="line"/>
+      <point x="406" y="30" type="line"/>
+      <point x="496" y="30" type="line"/>
+      <point x="330" y="268" type="line"/>
+      <point x="330" y="221" type="line"/>
+      <point x="491" y="452" type="line"/>
+      <point x="410" y="452" type="line"/>
       <point x="257" y="242" type="line"/>
     </contour>
   </outline>
diff --git a/src/Cantarell-Regular.ufo/glyphs/guillemetright.glif 
b/src/Cantarell-Regular.ufo/glyphs/guillemetright.glif
index 78a00613..8a1d1799 100644
--- a/src/Cantarell-Regular.ufo/glyphs/guillemetright.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/guillemetright.glif
@@ -1,25 +1,33 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guillemetright" format="2">
-  <advance width="520"/>
+  <advance width="538"/>
   <unicode hex="00BB"/>
   <outline>
     <contour>
-      <point x="253" y="30" type="line"/>
-      <point x="334" y="30" type="line"/>
-      <point x="475" y="241" type="line"/>
-      <point x="333" y="452" type="line"/>
-      <point x="245" y="452" type="line"/>
-      <point x="403" y="215" type="line"/>
-      <point x="403" y="262" type="line"/>
+      <point x="262" y="30" type="line"/>
+      <point x="343" y="30" type="line"/>
+      <point x="494" y="241" type="line"/>
+      <point x="342" y="452" type="line"/>
+      <point x="254" y="452" type="line"/>
+      <point x="422" y="215" type="line"/>
+      <point x="422" y="262" type="line"/>
     </contour>
     <contour>
-      <point x="51" y="30" type="line"/>
-      <point x="132" y="30" type="line"/>
-      <point x="273" y="241" type="line"/>
-      <point x="131" y="452" type="line"/>
-      <point x="43" y="452" type="line"/>
-      <point x="201" y="215" type="line"/>
-      <point x="201" y="262" type="line"/>
+      <point x="50" y="30" type="line"/>
+      <point x="131" y="30" type="line"/>
+      <point x="282" y="241" type="line"/>
+      <point x="130" y="452" type="line"/>
+      <point x="42" y="452" type="line"/>
+      <point x="210" y="215" type="line"/>
+      <point x="210" y="262" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|guillemetleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>guillemetleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/guilsinglleft.glif 
b/src/Cantarell-Regular.ufo/glyphs/guilsinglleft.glif
index 5cd1006f..c5fd84a3 100644
--- a/src/Cantarell-Regular.ufo/glyphs/guilsinglleft.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/guilsinglleft.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guilsinglleft" format="2">
-  <advance width="318"/>
+  <advance width="333"/>
   <unicode hex="2039"/>
   <outline>
     <contour>
-      <point x="185" y="30" type="line"/>
-      <point x="275" y="30" type="line"/>
-      <point x="119" y="268" type="line"/>
-      <point x="119" y="221" type="line"/>
-      <point x="270" y="452" type="line"/>
-      <point x="189" y="452" type="line"/>
-      <point x="45" y="242" type="line"/>
+      <point x="202" y="30" type="line"/>
+      <point x="292" y="30" type="line"/>
+      <point x="116" y="268" type="line"/>
+      <point x="116" y="221" type="line"/>
+      <point x="287" y="452" type="line"/>
+      <point x="206" y="452" type="line"/>
+      <point x="42" y="242" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/guilsinglright.glif 
b/src/Cantarell-Regular.ufo/glyphs/guilsinglright.glif
index c2119003..8ab183f9 100644
--- a/src/Cantarell-Regular.ufo/glyphs/guilsinglright.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/guilsinglright.glif
@@ -1,16 +1,24 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="guilsinglright" format="2">
-  <advance width="318"/>
+  <advance width="333"/>
   <unicode hex="203A"/>
   <outline>
     <contour>
-      <point x="51" y="30" type="line"/>
-      <point x="132" y="30" type="line"/>
-      <point x="273" y="241" type="line"/>
-      <point x="131" y="452" type="line"/>
-      <point x="43" y="452" type="line"/>
-      <point x="201" y="215" type="line"/>
-      <point x="201" y="262" type="line"/>
+      <point x="49" y="30" type="line"/>
+      <point x="130" y="30" type="line"/>
+      <point x="291" y="241" type="line"/>
+      <point x="129" y="452" type="line"/>
+      <point x="41" y="452" type="line"/>
+      <point x="219" y="215" type="line"/>
+      <point x="219" y="262" type="line"/>
     </contour>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|guilsinglleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>guilsinglleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/hyphen.glif b/src/Cantarell-Regular.ufo/glyphs/hyphen.glif
index ff6c1641..6f2fd696 100644
--- a/src/Cantarell-Regular.ufo/glyphs/hyphen.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/hyphen.glif
@@ -1,13 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="hyphen" format="2">
-  <advance width="456"/>
+  <advance width="424"/>
   <unicode hex="002D"/>
+  <unicode hex="00AD"/>
+  <unicode hex="2010"/>
+  <unicode hex="2011"/>
   <outline>
     <contour>
-      <point x="83" y="220" type="line"/>
-      <point x="373" y="220" type="line"/>
-      <point x="373" y="287" type="line"/>
-      <point x="83" y="287" type="line"/>
+      <point x="67" y="220" type="line"/>
+      <point x="357" y="220" type="line"/>
+      <point x="357" y="287" type="line"/>
+      <point x="67" y="287" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/layerinfo.plist 
b/src/Cantarell-Regular.ufo/glyphs/layerinfo.plist
index 0a8b2364..fb7476bc 100644
--- a/src/Cantarell-Regular.ufo/glyphs/layerinfo.plist
+++ b/src/Cantarell-Regular.ufo/glyphs/layerinfo.plist
@@ -1280,8 +1280,6 @@
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hookabovecomb.loclVIET</key>
       <integer>0</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.horizontalbar</key>
-      <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.horncomb</key>
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hryvnia</key>
@@ -1294,8 +1292,6 @@
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.hyphen</key>
       <integer>0</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.hyphentwo</key>
-      <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.i</key>
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.i-cy</key>
@@ -1514,8 +1510,6 @@
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.nlinebelow</key>
       <integer>0</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.nonbreakinghyphen</key>
-      <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.notequal</key>
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.notequal.tf</key>
@@ -1856,8 +1850,6 @@
       <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.slashshortcomb.case</key>
       <integer>0</integer>
-      <key>com.schriftgestaltung.layerOrderInGlyph.softhyphen</key>
-      <integer>0</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.softsign-cy</key>
       <integer>1</integer>
       <key>com.schriftgestaltung.layerOrderInGlyph.space</key>
diff --git a/src/Cantarell-Regular.ufo/glyphs/leftanglebracket-math.glif 
b/src/Cantarell-Regular.ufo/glyphs/leftanglebracket-math.glif
index b4254168..021deae8 100644
--- a/src/Cantarell-Regular.ufo/glyphs/leftanglebracket-math.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/leftanglebracket-math.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="leftanglebracket-math" format="2">
-  <advance width="312"/>
+  <advance width="327"/>
   <unicode hex="27E8"/>
   <outline>
     <contour>
-      <point x="185" y="-10" type="line"/>
-      <point x="270" y="-10" type="line"/>
-      <point x="114" y="398" type="line"/>
-      <point x="114" y="351" type="line"/>
-      <point x="265" y="739" type="line"/>
-      <point x="189" y="739" type="line"/>
-      <point x="45" y="372" type="line"/>
+      <point x="202" y="-10" type="line"/>
+      <point x="287" y="-10" type="line"/>
+      <point x="111" y="398" type="line"/>
+      <point x="111" y="351" type="line"/>
+      <point x="281" y="739" type="line"/>
+      <point x="205" y="739" type="line"/>
+      <point x="42" y="372" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/numbersign.glif 
b/src/Cantarell-Regular.ufo/glyphs/numbersign.glif
index 5486b408..a7a40648 100644
--- a/src/Cantarell-Regular.ufo/glyphs/numbersign.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/numbersign.glif
@@ -1,31 +1,31 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="numbersign" format="2">
-  <advance width="658"/>
+  <advance width="666"/>
   <unicode hex="0023"/>
   <outline>
     <contour>
-      <point x="423" y="0" type="line"/>
-      <point x="492" y="0" type="line"/>
-      <point x="492" y="694" type="line"/>
-      <point x="423" y="694" type="line"/>
+      <point x="403" y="0" type="line"/>
+      <point x="472" y="0" type="line"/>
+      <point x="521" y="694" type="line"/>
+      <point x="452" y="694" type="line"/>
     </contour>
     <contour>
-      <point x="36" y="181" type="line"/>
-      <point x="621" y="181" type="line"/>
-      <point x="621" y="244" type="line"/>
-      <point x="36" y="244" type="line"/>
+      <point x="31" y="180" type="line"/>
+      <point x="616" y="180" type="line"/>
+      <point x="616" y="245" type="line"/>
+      <point x="31" y="245" type="line"/>
     </contour>
     <contour>
-      <point x="168" y="0" type="line"/>
-      <point x="237" y="0" type="line"/>
-      <point x="237" y="694" type="line"/>
-      <point x="168" y="694" type="line"/>
+      <point x="148" y="0" type="line"/>
+      <point x="217" y="0" type="line"/>
+      <point x="266" y="694" type="line"/>
+      <point x="197" y="694" type="line"/>
     </contour>
     <contour>
-      <point x="36" y="452" type="line"/>
-      <point x="621" y="452" type="line"/>
-      <point x="621" y="515" type="line"/>
-      <point x="36" y="515" type="line"/>
+      <point x="50" y="451" type="line"/>
+      <point x="635" y="451" type="line"/>
+      <point x="635" y="516" type="line"/>
+      <point x="50" y="516" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/period.glif b/src/Cantarell-Regular.ufo/glyphs/period.glif
index 6c2ebe73..121873e7 100644
--- a/src/Cantarell-Regular.ufo/glyphs/period.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/period.glif
@@ -1,21 +1,21 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="period" format="2">
-  <advance width="272"/>
+  <advance width="256"/>
   <unicode hex="002E"/>
   <outline>
     <contour>
-      <point x="136" y="-10" type="curve" smooth="yes"/>
-      <point x="174" y="-10"/>
-      <point x="200" y="17"/>
-      <point x="200" y="54" type="curve" smooth="yes"/>
-      <point x="200" y="91"/>
-      <point x="174" y="118"/>
-      <point x="136" y="118" type="curve" smooth="yes"/>
-      <point x="98" y="118"/>
-      <point x="72" y="91"/>
-      <point x="72" y="54" type="curve" smooth="yes"/>
-      <point x="72" y="17"/>
-      <point x="98" y="-10"/>
+      <point x="128" y="-10" type="curve" smooth="yes"/>
+      <point x="166" y="-10"/>
+      <point x="192" y="17"/>
+      <point x="192" y="54" type="curve" smooth="yes"/>
+      <point x="192" y="91"/>
+      <point x="166" y="118"/>
+      <point x="128" y="118" type="curve" smooth="yes"/>
+      <point x="90" y="118"/>
+      <point x="64" y="91"/>
+      <point x="64" y="54" type="curve" smooth="yes"/>
+      <point x="64" y="17"/>
+      <point x="90" y="-10"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/questiondown.glif 
b/src/Cantarell-Regular.ufo/glyphs/questiondown.glif
index 2d591674..c42e0de3 100644
--- a/src/Cantarell-Regular.ufo/glyphs/questiondown.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/questiondown.glif
@@ -1,8 +1,14 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="questiondown" format="2">
-  <advance width="425"/>
+  <advance width="422"/>
   <unicode hex="00BF"/>
   <outline>
-    <component base="question" xScale="-1" yScale="-1" xOffset="440" yOffset="479"/>
+    <component base="question" xScale="-1" yScale="-1" xOffset="422" yOffset="479"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>question</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quotedbl.glif b/src/Cantarell-Regular.ufo/glyphs/quotedbl.glif
index c19cbba9..96ba63b7 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quotedbl.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quotedbl.glif
@@ -1,9 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedbl" format="2">
-  <advance width="456"/>
+  <advance width="424"/>
   <unicode hex="0022"/>
   <outline>
-    <component base="quotesingle" xOffset="15"/>
-    <component base="quotesingle" xOffset="195"/>
+    <component base="quotesingle"/>
+    <component base="quotesingle" xOffset="180"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quotesingle</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quotesingle</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quotedblbase.glif 
b/src/Cantarell-Regular.ufo/glyphs/quotedblbase.glif
index 0028f0d8..af481510 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quotedblbase.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quotedblbase.glif
@@ -1,13 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblbase" format="2">
-  <advance width="461"/>
+  <advance width="433"/>
   <unicode hex="201E"/>
   <outline>
-    <component base="_typoquote" xOffset="172"/>
-    <component base="_typoquote" xOffset="-8"/>
+    <component base="_typoquote" xOffset="160"/>
+    <component base="_typoquote" xOffset="-25"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteright</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quotedblleft.glif 
b/src/Cantarell-Regular.ufo/glyphs/quotedblleft.glif
index f5a3cc2b..56e8ff7d 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quotedblleft.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quotedblleft.glif
@@ -1,9 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblleft" format="2">
-  <advance width="466"/>
+  <advance width="433"/>
   <unicode hex="201C"/>
   <outline>
     <component base="quoteleft" xOffset="185"/>
     <component base="quoteleft"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteleft</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quotedblright.glif 
b/src/Cantarell-Regular.ufo/glyphs/quotedblright.glif
index 93f1197b..ff56c615 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quotedblright.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quotedblright.glif
@@ -1,9 +1,17 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotedblright" format="2">
-  <advance width="461"/>
+  <advance width="433"/>
   <unicode hex="201D"/>
   <outline>
-    <component base="quoteright" xOffset="179" yOffset="-2"/>
-    <component base="quoteright" xOffset="-1" yOffset="-2"/>
+    <component base="quoteright" xOffset="185" yOffset="-2"/>
+    <component base="quoteright" yOffset="-2"/>
   </outline>
+  <lib>
+    <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>quoteright</string>
+    </dict>
+  </lib>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quoteleft.glif b/src/Cantarell-Regular.ufo/glyphs/quoteleft.glif
index cd54cdb3..4ca0e1d6 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quoteleft.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quoteleft.glif
@@ -1,9 +1,9 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quoteleft" format="2">
-  <advance width="281"/>
+  <advance width="248"/>
   <unicode hex="2018"/>
   <outline>
-    <component base="_typoquote" xScale="-1" yScale="-1" xOffset="289" yOffset="587"/>
+    <component base="_typoquote" xScale="-1" yScale="-1" xOffset="273" yOffset="587"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quoteright.glif 
b/src/Cantarell-Regular.ufo/glyphs/quoteright.glif
index 01b32827..897c7852 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quoteright.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quoteright.glif
@@ -1,12 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quoteright" format="2">
-  <advance width="281"/>
+  <advance width="248"/>
   <unicode hex="2019"/>
   <outline>
-    <component base="_typoquote" xOffset="-8" yOffset="634"/>
+    <component base="_typoquote" xOffset="-25" yOffset="634"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.rightMetricsKey</key>
+      <string>=|quoteleft</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>quoteleft</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quotesinglbase.glif 
b/src/Cantarell-Regular.ufo/glyphs/quotesinglbase.glif
index a368055f..7b992be3 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quotesinglbase.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quotesinglbase.glif
@@ -1,12 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotesinglbase" format="2">
-  <advance width="281"/>
+  <advance width="248"/>
   <unicode hex="201A"/>
   <outline>
-    <component base="_typoquote" xOffset="-8"/>
+    <component base="_typoquote" xOffset="-25"/>
   </outline>
   <lib>
     <dict>
+      <key>com.schriftgestaltung.Glyphs.glyph.leftMetricsKey</key>
+      <string>quoteright</string>
+      <key>com.schriftgestaltung.Glyphs.glyph.widthMetricsKey</key>
+      <string>quoteleft</string>
       <key>com.schriftgestaltung.componentsAlignment</key>
       <array>
         <integer>-1</integer>
diff --git a/src/Cantarell-Regular.ufo/glyphs/quotesingle.glif 
b/src/Cantarell-Regular.ufo/glyphs/quotesingle.glif
index 22424683..27b05aaa 100644
--- a/src/Cantarell-Regular.ufo/glyphs/quotesingle.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/quotesingle.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="quotesingle" format="2">
-  <advance width="276"/>
+  <advance width="244"/>
   <unicode hex="0027"/>
   <outline>
     <contour>
-      <point x="105" y="422" type="line"/>
-      <point x="171" y="422" type="line"/>
-      <point x="181" y="694" type="line"/>
-      <point x="95" y="694" type="line"/>
+      <point x="89" y="422" type="line"/>
+      <point x="155" y="422" type="line"/>
+      <point x="165" y="694" type="line"/>
+      <point x="79" y="694" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/rightanglebracket-math.glif 
b/src/Cantarell-Regular.ufo/glyphs/rightanglebracket-math.glif
index c46bbc8d..0abe0b84 100644
--- a/src/Cantarell-Regular.ufo/glyphs/rightanglebracket-math.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/rightanglebracket-math.glif
@@ -1,16 +1,16 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="rightanglebracket-math" format="2">
-  <advance width="313"/>
+  <advance width="329"/>
   <unicode hex="27E9"/>
   <outline>
     <contour>
-      <point x="50" y="-10" type="line"/>
-      <point x="128" y="-10" type="line"/>
-      <point x="269" y="371" type="line"/>
-      <point x="127" y="739" type="line"/>
-      <point x="42" y="739" type="line"/>
-      <point x="200" y="345" type="line"/>
-      <point x="200" y="392" type="line"/>
+      <point x="47" y="-10" type="line"/>
+      <point x="126" y="-10" type="line"/>
+      <point x="287" y="371" type="line"/>
+      <point x="125" y="739" type="line"/>
+      <point x="40" y="739" type="line"/>
+      <point x="218" y="345" type="line"/>
+      <point x="218" y="392" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/glyphs/semicolon.glif b/src/Cantarell-Regular.ufo/glyphs/semicolon.glif
index 4088603a..aa1da507 100644
--- a/src/Cantarell-Regular.ufo/glyphs/semicolon.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/semicolon.glif
@@ -1,10 +1,10 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="semicolon" format="2">
-  <advance width="272"/>
+  <advance width="256"/>
   <unicode hex="003B"/>
   <outline>
-    <component base="comma" xOffset="-3"/>
-    <component base="period" xOffset="-5" yOffset="364"/>
+    <component base="comma"/>
+    <component base="period" yOffset="364"/>
   </outline>
   <lib>
     <dict>
diff --git a/src/Cantarell-Regular.ufo/glyphs/underscore.glif 
b/src/Cantarell-Regular.ufo/glyphs/underscore.glif
index b6ae36a2..837b8513 100644
--- a/src/Cantarell-Regular.ufo/glyphs/underscore.glif
+++ b/src/Cantarell-Regular.ufo/glyphs/underscore.glif
@@ -1,13 +1,13 @@
 <?xml version='1.0' encoding='UTF-8'?>
 <glyph name="underscore" format="2">
-  <advance width="604"/>
+  <advance width="500"/>
   <unicode hex="005F"/>
   <outline>
     <contour>
-      <point x="83" y="-69" type="line"/>
-      <point x="521" y="-69" type="line"/>
-      <point x="521" y="0" type="line"/>
-      <point x="83" y="0" type="line"/>
+      <point x="-10" y="-119" type="line"/>
+      <point x="510" y="-119" type="line"/>
+      <point x="510" y="-50" type="line"/>
+      <point x="-10" y="-50" type="line"/>
     </contour>
   </outline>
 </glyph>
diff --git a/src/Cantarell-Regular.ufo/lib.plist b/src/Cantarell-Regular.ufo/lib.plist
index 6b178835..12216782 100644
--- a/src/Cantarell-Regular.ufo/lib.plist
+++ b/src/Cantarell-Regular.ufo/lib.plist
@@ -2096,13 +2096,9 @@
       <string>bracketleft</string>
       <string>bracketright</string>
       <string>hyphen</string>
-      <string>softhyphen</string>
       <string>endash</string>
       <string>emdash</string>
       <string>figuredash</string>
-      <string>horizontalbar</string>
-      <string>hyphentwo</string>
-      <string>nonbreakinghyphen</string>
       <string>underscore</string>
       <string>quotesinglbase</string>
       <string>quotedblbase</string>
@@ -3124,8 +3120,6 @@
       <string>uni1E2B</string>
       <key>hdotbelow</key>
       <string>uni1E25</string>
-      <key>horizontalbar</key>
-      <string>uni2015</string>
       <key>horncomb</key>
       <string>uni031B</string>
       <key>hryvnia</key>
@@ -3134,8 +3128,6 @@
       <string>uni030B</string>
       <key>hungarumlautcomb.case</key>
       <string>uni030B.case</string>
-      <key>hyphentwo</key>
-      <string>uni2010</string>
       <key>i-cy</key>
       <string>uni0456</string>
       <key>ia-cy</key>
@@ -3266,8 +3258,6 @@
       <string>uni045A</string>
       <key>nlinebelow</key>
       <string>uni1E49</string>
-      <key>nonbreakinghyphen</key>
-      <string>uni2011</string>
       <key>notidentical</key>
       <string>uni2262</string>
       <key>notidentical.tf</key>
@@ -3442,8 +3432,6 @@
       <string>uni0337</string>
       <key>slashshortcomb.case</key>
       <string>uni0337.case</string>
-      <key>softhyphen</key>
-      <string>uni00AD</string>
       <key>softsign-cy</key>
       <string>uni044C</string>
       <key>strokelongcomb</key>
diff --git a/src/Cantarell_autospace.py b/src/Cantarell_autospace.py
index d2aceda7..e83a74c7 100644
--- a/src/Cantarell_autospace.py
+++ b/src/Cantarell_autospace.py
@@ -20,9 +20,12 @@
 
 # Punctuation
 *,Punctuation,Other,1,*,*,
+*,Punctuation,Other,1.1,*,exclam,
+*,Punctuation,Other,0.9,*,period,
 *,Punctuation,Parenthesis,1.2,*,*,
 *,Punctuation,Quote,1.2,*,*,
-*,Punctuation,Dash,1,*,*,
+*,Punctuation,Quote,1,*,quote,
+*,Punctuation,Dash,0.8,*,*,
 *,Punctuation,*,1,*,slash,
 *,Punctuation,*,1.2,*,*,
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]