4767 Commits

Author SHA1 Message Date
justvanrossum
cce31c9950 Also warn when keys are ignored upon compile. 2016-11-26 14:05:23 +01:00
justvanrossum
8d22c39d0b Output an XML comment with the keys that were ignored; Added references to the other issues involved. 2016-11-26 14:05:23 +01:00
justvanrossum
f9d265d1e6 This commit fixes #740.
Commits 3063def and 5b47971 introduced a separate fontDictOperators list for FontDict, only listing those TopDict key/value pairs that are actually used in the FontDict context. It provided a fallback that TTX files containing such "useless" key/value pairs would not be rejected.

However, the code still rejected binary fonts that contained such values, even though it didn't before, and yes, such fonts exist. Also: such fonts are not broken per spec, they just contain some fields that otherwise no one ever looks at, so it's a little harsh to reject them.

This patch removes most of the special FontDict code, and uses everything from TopDict, *except* the order attribute: it sets that to a list of the relevant keys for the FontDict. The effect of this is that "useless" key/value pairs are ignored, not just upon reading XML, but also upon decompilation and compilation of binary fonts. It improves on the previous XML reading behavior in that it no longer silently ignores key typos in the TTX input.

Ideally, we would *output* everything that is actually in the FontDict to TTX, and only ignore the values when compiling, but I didn't find a clean solution for that, so I decided to just fix the issue.
2016-11-26 14:05:23 +01:00
moyogo
ea92dd75f1 appveyor: use setuptools==28.8.0 since 29.0.0 doesn’t install cli-{32,64}.exe and other binaries 2016-11-26 09:38:41 +00:00
Cosimo Lupo
400e8e8dd0
Bump version: 3.2.1 → 3.2.2 2016-11-24 17:19:58 +00:00
Cosimo Lupo
403d05d822
update changelog for 3.2.2 2016-11-24 17:19:36 +00:00
Erik
9abd4beec1 Convenience method that returns font objects for all the existing sources in the document. Defaults to defcon font object, but you can BYO. 2016-11-22 22:47:34 +01:00
Just van Rossum
cae8916f06 Merge pull request #742 from mashabow/patch-1
Fix "Private Use (plane 15)" range
2016-11-21 07:05:38 +01:00
Masaya Nakamura
08a0d550db Fix "Private Use (plane 15)" range
https://twitter.com/ken_lunde/status/796564061206913024
https://www.microsoft.com/typography/otspec/errata.htm
2016-11-21 11:26:57 +09:00
Erik
5174dfb238 Tweaks in the read me. 2016-11-20 17:46:11 +01:00
Erik
733c4ea755 Smaller check. 2016-11-20 15:48:22 +01:00
Erik
079771dd76 Merge branch 'master' of https://github.com/LettError/designSpaceDocument
# Conflicts:
#	Lib/designSpaceDocument/__init__.py
2016-11-20 10:14:25 +01:00
Erik
8a0ad4bac8 - changed axis "labelName" element name to lowercase.
- actually also read the labelnames.
- added tests for axis data roundttrip
2016-11-20 10:05:55 +01:00
Erik van Blokland
fff6760d3e Merge pull request #1 from moyogo/patch1
Minor: whitespace, gitignore and py23 (print function and unicode_literals)
2016-11-18 11:23:38 +01:00
Denis Moyogo Jacquerye
90b2171ef2 gitignore: .DS_Store, __pycache__, *.py[co] and .cache 2016-11-18 10:08:21 +00:00
Denis Moyogo Jacquerye
050f5731b2 py23: unicode_literals 2016-11-15 20:17:57 +00:00
Denis Moyogo Jacquerye
a62918cb72 py23: print function 2016-11-15 20:16:48 +00:00
Denis Moyogo Jacquerye
6770d6a02f whitespace 2016-11-15 20:15:04 +00:00
Erik van Blokland
947e524a74 Update README.md 2016-11-15 16:35:01 +01:00
Erik van Blokland
e348a06e82 Update README.md 2016-11-15 16:27:46 +01:00
Erik van Blokland
3e8175569d Update README.md 2016-11-15 14:29:14 +01:00
Erik van Blokland
1bd59c3ef6 Update README.md 2016-11-15 14:25:19 +01:00
Erik
41f5cd7e5d more things to ignore. 2016-11-15 13:47:48 +01:00
Erik
2fbdd37362 Initial commit
- independent reader / writer object for designspace documents.
- imports and exports easy to subclass objects for instance, source and axis data.
- roundtrips
- intended to be compatible with use in MutatorMath, Superpolatpor and varlib.
2016-11-15 13:27:39 +01:00
Behdad Esfahbod
78d3cbea57 [subset] Fix subsetting MathVariants
Was failing on Caudex-Regular.ttf for example.
2016-11-11 10:58:02 -08:00
Behdad Esfahbod
25083502e4 [perimeterPen] Update check for cusps
If p1 coincides with p0 or p2, we still can use the lineTo()
code.
2016-11-08 16:39:38 -08:00
Behdad Esfahbod
7915a45ddf [varLib] Handle fonts without GPOS
Fixes https://github.com/fonttools/fonttools/issues/699
2016-11-08 15:44:39 -08:00
Behdad Esfahbod
a11bc5655d [merge] Ignore LangSys if None
Fixes https://github.com/fonttools/fonttools/issues/739
for now, though proper fix is more complicated.

This was hit now because the subsetter was changed a while back
to retain script systems even if empty...  I don't like that.
2016-11-08 14:06:50 -08:00
Behdad Esfahbod
4868a631b9 [Snippets/interpolatable] Improve error reporting
Also enable full vector.  It's necessary for accurate report.
2016-11-07 20:30:57 -08:00
Cosimo Lupo
86207144ae Merge pull request #736 from robmck-ms/master
[varLib] Do not emit null axes in fvar (default==min==max)
2016-11-05 12:51:46 +00:00
Rob McKaughan
1bebcec00d Do not emit null axes in fvar (default==min==max) 2016-11-04 14:53:43 -07:00
Cosimo Lupo
66d847e365
Update changelog for 3.2.1 2016-11-03 14:32:15 +00:00
Cosimo Lupo
6e0b952441
Bump version: 3.2.0 → 3.2.1 2016-11-03 14:21:51 +00:00
Cosimo Lupo
c66a2bc327
Bump version: 3.1.2 → 3.2.0
I had forgotten to bump the version for 3.2.0... Sorry :(

This is not a problem for the released packages, since versioneer correctly writes the tagged version.
It's only the hard-coded version string that's used as a fallback if git fails to compute the version which I forgot to update.
2016-11-03 14:21:51 +00:00
Cosimo Lupo
c653e1408c Merge pull request #734 from moyogo/revert-OS2
Fix "OS/2: fsSelection bits 0 and 5 should match head.macStyle bits 1 and 0"
2016-11-03 13:35:49 +00:00
moyogo
acfb137881 OS2/2: fix checking fsSelection bits matching head.macStyle bits 2016-11-03 11:37:00 +00:00
Cosimo Lupo
df967e70fc
varLib: rename --buildHVAR option to --build-HVAR; add 'build_HVAR=False' kwarg to 'build' function
better not having to pass an argparse.Namespace object to varLib.build
2016-11-03 10:59:00 +00:00
Rob McKaughan
bdbb8c5374 Add commandline switch to build HVAR 2016-11-02 20:54:50 -07:00
Cosimo Lupo
49268c8ab8 Merge pull request #732 from anthrotype/backslash-glyphs
[feaLib] support backslash-escaped glyphs in FEA
2016-11-02 16:16:44 +00:00
Cosimo Lupo
3933a16dd1
Update changelog 2016-11-02 16:10:34 +00:00
Cosimo Lupo
3b1e0bdc47
[feaLib.builder_test] fix up tests for backslash-escaped glyph names 2016-11-02 16:01:35 +00:00
Cosimo Lupo
a0cc66bfc0
[feaLib.parser] strip initial backslash from glyph names
Fixes https://github.com/fonttools/fonttools/issues/457

Backslash-prefixed glyph name can be used in a Feature file to distinguish them from identically-named keywords.

From section "2.f.i. Glyph name" of Adobe's Feature File Specification:

> An initial backslash serves to differentiate a glyph name from an identical keyword in the feature file language. For example, a glyph named "table" must be specified in the feature file as: \table

Thus, when we parse a glyph name that begins with a backslash, we need to ignore the first character.

Note that makeotf rejects feature files with glyph names that start with or contain backslashes, even when escaped with another backslash.

feature liga {
    sub \\glyphWithBackslash by A;
} liga;

This yields:

    makeotfexe [FATAL] <Backslash-Regular> invalid token (text was "\") [features 2]
2016-11-02 16:01:21 +00:00
Cosimo Lupo
dcb72536a0
[C_F_F_test] strip ttFont's 'ttLibVersion' attribute because it may change 2016-11-02 10:05:10 +00:00
Cosimo Lupo
df73cc5b32
[travis] always do git fetch --unshallow to get tags for computing version
Otherwise some tests that checks for the version string may fail:
https://travis-ci.org/fonttools/fonttools/jobs/172478473#L1155
2016-11-02 09:33:19 +00:00
Cosimo Lupo
2611ec2cff
[travis] only make dist in before_deploy stage; use 'file_glob' to get files for Github Releases 2016-11-02 09:30:18 +00:00
Behdad Esfahbod
904b1c5942 Support splitting PairPosFormat1 tables
Fixes https://github.com/googlei18n/fontmake/issues/143
2016-11-01 18:15:21 -07:00
Adrien Tétar
16f0fd2259 Merge pull request #731 from fonttools/changelog-3.2.0
update changelog for 3.2.0
2016-11-01 21:43:45 +01:00
Cosimo Lupo
59f01c8dc3
NEWS: update changelog for 3.2.0 2016-11-01 19:16:10 +00:00
Behdad Esfahbod
b4ebe12b31 [varLib] Reenable HVAR for CFF2 fonts
https://github.com/fonttools/fonttools/issues/705
2016-10-31 16:15:24 -07:00
Behdad Esfahbod
c5c942293a [./fonttools] Add ./Lib to python path
See f5bf9b04de (commitcomment-19636642)
2016-10-31 11:55:15 -07:00