diff --git a/Lib/fontTools/mtiLib/__init__.py b/Lib/fontTools/mtiLib/__init__.py index 97b91ea1c..13b308e51 100644 --- a/Lib/fontTools/mtiLib/__init__.py +++ b/Lib/fontTools/mtiLib/__init__.py @@ -12,6 +12,8 @@ from fontTools.ttLib.tables import otTables as ot from fontTools.ttLib.tables.otBase import ValueRecord, valueRecordFormatDict from fontTools.otlLib import builder as otl from contextlib import contextmanager +from fontTools.ttLib import newTable +from fontTools.feaLib.lookupDebugInfo import LOOKUP_DEBUG_INFO_KEY from operator import setitem import logging @@ -1036,7 +1038,17 @@ def parseGSUBGPOS(lines, font, tableTag): self.LookupList.LookupCount = len(self.LookupList.Lookup) if lookupMap is not None: lookupMap.applyDeferredMappings() - if featureMap is not None: + if "Debg" not in font: + font["Debg"] = newTable("Debg") + font["Debg"].data = {} + debug = ( + font["Debg"] + .data.setdefault(LOOKUP_DEBUG_INFO_KEY, {}) + .setdefault(tableTag, {}) + ) + for name, lookup in lookupMap.items(): + debug[str(lookup)] = ["", name, ""] + featureMap.applyDeferredMappings() container.table = self return container diff --git a/Tests/mtiLib/data/featurename-backward.ttx.GSUB b/Tests/mtiLib/data/featurename-backward.ttx.GSUB index cc893cd90..0fbe51fd5 100644 --- a/Tests/mtiLib/data/featurename-backward.ttx.GSUB +++ b/Tests/mtiLib/data/featurename-backward.ttx.GSUB @@ -47,6 +47,7 @@ + diff --git a/Tests/mtiLib/data/featurename-forward.ttx.GSUB b/Tests/mtiLib/data/featurename-forward.ttx.GSUB index cc893cd90..0fbe51fd5 100644 --- a/Tests/mtiLib/data/featurename-forward.ttx.GSUB +++ b/Tests/mtiLib/data/featurename-forward.ttx.GSUB @@ -47,6 +47,7 @@ + diff --git a/Tests/mtiLib/data/lookupnames-backward.ttx.GSUB b/Tests/mtiLib/data/lookupnames-backward.ttx.GSUB index cb358d7c8..811f79a05 100644 --- a/Tests/mtiLib/data/lookupnames-backward.ttx.GSUB +++ b/Tests/mtiLib/data/lookupnames-backward.ttx.GSUB @@ -35,6 +35,7 @@ + @@ -44,6 +45,7 @@ + diff --git a/Tests/mtiLib/data/lookupnames-forward.ttx.GSUB b/Tests/mtiLib/data/lookupnames-forward.ttx.GSUB index 249d605b6..86b3148f0 100644 --- a/Tests/mtiLib/data/lookupnames-forward.ttx.GSUB +++ b/Tests/mtiLib/data/lookupnames-forward.ttx.GSUB @@ -35,6 +35,7 @@ + @@ -74,6 +75,7 @@ + diff --git a/Tests/mtiLib/data/mixed-toplevels.ttx.GSUB b/Tests/mtiLib/data/mixed-toplevels.ttx.GSUB index 249d605b6..74192a51d 100644 --- a/Tests/mtiLib/data/mixed-toplevels.ttx.GSUB +++ b/Tests/mtiLib/data/mixed-toplevels.ttx.GSUB @@ -35,6 +35,7 @@ + @@ -74,6 +75,7 @@ + diff --git a/Tests/mtiLib/data/mti/chained-glyph.ttx.GPOS b/Tests/mtiLib/data/mti/chained-glyph.ttx.GPOS index b550c700f..32fffc4b7 100644 --- a/Tests/mtiLib/data/mti/chained-glyph.ttx.GPOS +++ b/Tests/mtiLib/data/mti/chained-glyph.ttx.GPOS @@ -3,6 +3,7 @@ + @@ -43,6 +44,7 @@ + diff --git a/Tests/mtiLib/data/mti/chained-glyph.ttx.GSUB b/Tests/mtiLib/data/mti/chained-glyph.ttx.GSUB index 7dfdb8480..30a15304d 100644 --- a/Tests/mtiLib/data/mti/chained-glyph.ttx.GSUB +++ b/Tests/mtiLib/data/mti/chained-glyph.ttx.GSUB @@ -3,6 +3,7 @@ + @@ -43,6 +44,7 @@ + diff --git a/Tests/mtiLib/data/mti/chainedclass.ttx.GSUB b/Tests/mtiLib/data/mti/chainedclass.ttx.GSUB index fcd7569f4..39691c448 100644 --- a/Tests/mtiLib/data/mti/chainedclass.ttx.GSUB +++ b/Tests/mtiLib/data/mti/chainedclass.ttx.GSUB @@ -3,6 +3,7 @@ + @@ -42,6 +43,7 @@ + diff --git a/Tests/mtiLib/data/mti/chainedcoverage.ttx.GSUB b/Tests/mtiLib/data/mti/chainedcoverage.ttx.GSUB index 4f312c6e2..bea53f50f 100644 --- a/Tests/mtiLib/data/mti/chainedcoverage.ttx.GSUB +++ b/Tests/mtiLib/data/mti/chainedcoverage.ttx.GSUB @@ -3,6 +3,7 @@ + @@ -45,6 +46,7 @@ + diff --git a/Tests/mtiLib/data/mti/gposcursive.ttx.GPOS b/Tests/mtiLib/data/mti/gposcursive.ttx.GPOS index 6c08c50c3..6d92d083f 100644 --- a/Tests/mtiLib/data/mti/gposcursive.ttx.GPOS +++ b/Tests/mtiLib/data/mti/gposcursive.ttx.GPOS @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gposkernset.ttx.GPOS b/Tests/mtiLib/data/mti/gposkernset.ttx.GPOS index a8371233b..e7a5ff782 100644 --- a/Tests/mtiLib/data/mti/gposkernset.ttx.GPOS +++ b/Tests/mtiLib/data/mti/gposkernset.ttx.GPOS @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gposmarktobase.ttx.GPOS b/Tests/mtiLib/data/mti/gposmarktobase.ttx.GPOS index e6e210287..b78d4ff02 100644 --- a/Tests/mtiLib/data/mti/gposmarktobase.ttx.GPOS +++ b/Tests/mtiLib/data/mti/gposmarktobase.ttx.GPOS @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gpospairclass.ttx.GPOS b/Tests/mtiLib/data/mti/gpospairclass.ttx.GPOS index 32b35aee9..9058eb0fd 100644 --- a/Tests/mtiLib/data/mti/gpospairclass.ttx.GPOS +++ b/Tests/mtiLib/data/mti/gpospairclass.ttx.GPOS @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gpospairglyph.ttx.GPOS b/Tests/mtiLib/data/mti/gpospairglyph.ttx.GPOS index f03a90e33..58567a971 100644 --- a/Tests/mtiLib/data/mti/gpospairglyph.ttx.GPOS +++ b/Tests/mtiLib/data/mti/gpospairglyph.ttx.GPOS @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gpossingle.ttx.GPOS b/Tests/mtiLib/data/mti/gpossingle.ttx.GPOS index c3bdbf68a..3a955f659 100644 --- a/Tests/mtiLib/data/mti/gpossingle.ttx.GPOS +++ b/Tests/mtiLib/data/mti/gpossingle.ttx.GPOS @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gsubalternate.ttx.GSUB b/Tests/mtiLib/data/mti/gsubalternate.ttx.GSUB index 86b0b731b..7762c621c 100644 --- a/Tests/mtiLib/data/mti/gsubalternate.ttx.GSUB +++ b/Tests/mtiLib/data/mti/gsubalternate.ttx.GSUB @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gsubligature.ttx.GSUB b/Tests/mtiLib/data/mti/gsubligature.ttx.GSUB index 26c88c81c..5ad201845 100644 --- a/Tests/mtiLib/data/mti/gsubligature.ttx.GSUB +++ b/Tests/mtiLib/data/mti/gsubligature.ttx.GSUB @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gsubmultiple.ttx.GSUB b/Tests/mtiLib/data/mti/gsubmultiple.ttx.GSUB index 5bedfba6a..72eefb87c 100644 --- a/Tests/mtiLib/data/mti/gsubmultiple.ttx.GSUB +++ b/Tests/mtiLib/data/mti/gsubmultiple.ttx.GSUB @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gsubreversechanined.ttx.GSUB b/Tests/mtiLib/data/mti/gsubreversechanined.ttx.GSUB index d705af53d..87412eaec 100644 --- a/Tests/mtiLib/data/mti/gsubreversechanined.ttx.GSUB +++ b/Tests/mtiLib/data/mti/gsubreversechanined.ttx.GSUB @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/gsubsingle.ttx.GSUB b/Tests/mtiLib/data/mti/gsubsingle.ttx.GSUB index dc6a29501..adc3ba524 100644 --- a/Tests/mtiLib/data/mti/gsubsingle.ttx.GSUB +++ b/Tests/mtiLib/data/mti/gsubsingle.ttx.GSUB @@ -3,6 +3,7 @@ + diff --git a/Tests/mtiLib/data/mti/mark-to-ligature.ttx.GPOS b/Tests/mtiLib/data/mti/mark-to-ligature.ttx.GPOS index b5f275eb0..f723670c0 100644 --- a/Tests/mtiLib/data/mti/mark-to-ligature.ttx.GPOS +++ b/Tests/mtiLib/data/mti/mark-to-ligature.ttx.GPOS @@ -3,6 +3,7 @@ +