2625 Commits

Author SHA1 Message Date
Cosimo Lupo
4ac53ab8b8 add missing 'import sys'
A couple of modules were relying on the fact that the 'sys' module was being implicitly imported by 'from py23 import *'.
The 'py23.__all__' does not include 'sys'. I think it's better to always import 'sys' explicitly when needed.
2016-04-07 09:42:13 +01:00
Cosimo Lupo
69bee48a8f [classifyTools] semicolon 2016-04-07 09:33:02 +01:00
Cosimo Lupo
34d43aa797 [classifyTools] 'sorted' keyword argument should be boolean
or at least that's what the signature and the docstring imply.
2016-04-07 09:31:12 +01:00
Cosimo Lupo
da04ab2909 [py23] define __all__ variable
specifying the list of names that are imported when `from py23 import *` is used
2016-04-07 09:21:05 +01:00
Behdad Esfahbod
6bfe6989de [Snippets/symfont] Add glyph perimeter to GlyphStatistics 2016-04-06 18:15:43 -07:00
Behdad Esfahbod
f70d264ef0 Add __bool__ to fontTools.misc.transform.Transform 2016-04-06 18:15:43 -07:00
Behdad Esfahbod
552b5d97fc Add fontTools.misc.classifyTools, helpers to classify things into classes
To be extended with more features / API.  API might change.
2016-04-06 18:15:43 -07:00
Behdad Esfahbod
2a0359af4d Always import * from py23
Since py23 modifies some essential builtins, it's safe to import
everything all the time.  At least, that's how it was designed.
It's a bug if importing * breaks some code.
2016-04-06 18:15:43 -07:00
Cosimo Lupo
e3f3f4f976 [_m_a_x_p] rename 'allXMaxIsLsb' variable to 'allXMinIsLsb' for clarity's sake
The previous 'allXMaxIsLsb' name was misleading.
The 'allXMinIsLsb' boolean variable cooresponds to the head table's Bit 1.
This is set whenever all glyphs have the bbox.xMin equal to the respective
left sidebearing (and therefore "left sidebearing point at x=0").
2016-04-05 16:17:38 +01:00
Sascha Brawer
13e862da72 [meta] Remove comments about intentionally deviating from Apple's spec
Today, Apple has kindly fixed a bug in the [specification of the
meta table](https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6meta.html).  The existing fonttools implementation matches the
revised specification.  Therefore, the comments about fonttools
intentionally deviating from Apple's spec can be removed.
2016-04-01 15:50:52 +02:00
Sascha Brawer
919e98c3bb Merge pull request #563 from behdad/subset-gvar
Support subsetting of variation fonts
2016-04-01 09:02:49 +02:00
Sascha Brawer
0fad6e66ec Support subsetting of variation fonts 2016-03-31 16:23:24 +02:00
Cosimo Lupo
3c187c590a [ttx] minor: don't suppress SystemExit on win32 platform 2016-03-30 14:56:40 +01:00
Cosimo Lupo
d8004de04c [ttx] remove redundant continue in parseOptions loop
`git blame` says that was my fault:
e5b6be00a0 (diff-fce6b83de86f2e83411202adc745ffb2R316)

Ouch.
2016-03-28 18:07:59 +02:00
Cosimo Lupo
87a1d1bd8f Merge pull request #561 from mashabow/readme
Minor fixes in README.md
2016-03-28 15:28:33 +02:00
Masaya Nakamura
68ea04eced Minor fixes in README.md 2016-03-28 10:40:49 +09:00
Sascha Brawer
b62f525208 Merge pull request #557 from khaledhosny/fealib-os2
[feaLib] Support OS/2 table
2016-03-23 14:13:33 +01:00
Khaled Hosny
0a1f323835 [feaLib] Support OS/2 table 2016-03-23 15:42:00 +04:00
Khaled Hosny
fdcba0e130 [feaLib] Allow “/” in name tokens
For “OS/2” table.
2016-03-23 03:10:05 +04:00
Cosimo Lupo
7e553e9fee Merge pull request #556 from anthrotype/feaLib-file-input
[feaLib] take in a path or a file-like object
2016-03-22 13:36:24 +00:00
Cosimo Lupo
9e8113718b [feaLib.builder] decode features string using tounicode before passing it to StringIO (for python2) 2016-03-21 19:39:07 +00:00
Cosimo Lupo
bb937e35e6 [feaLib.parser_test] fix up tests after changes to featurefile arg 2016-03-21 18:55:38 +00:00
Cosimo Lupo
3affc725aa [feaLib.lexer_test] fix up tests after changes to make_lexer_ 2016-03-21 18:55:35 +00:00
Cosimo Lupo
0f8f71d5ec [feaLib.lexer] modify make_lexer_ factory to take a 'file_or_path' argument
if 'file_or_path' is a file object keep it open, otherwise read the data from
the path and then close it.
2016-03-21 18:53:25 +00:00
Cosimo Lupo
6a05367a2c [feaLib.parser] change argument name 2016-03-21 18:47:27 +00:00
Cosimo Lupo
06b9a808ad [feaLib.builder] make addOpenTypeFeatures take only one 'featurefile' argument; add addOpenTypeFeaturesFromString
'featurefile' can be either a path (string) or a file object, like in TTFont or XMLReader and XMLWriter constructors.

If a file object does not have a 'name' attribute, a default "<features>" name is
used and the current working directory is assumed as the root for relative includes.
2016-03-21 18:46:50 +00:00
Behdad Esfahbod
2e816d6c2d [symfont] Permissions 2016-03-21 10:12:26 -07:00
Behdad Esfahbod
40198a2dec [gvar] Use array.array to decode deltas 2016-03-21 10:12:26 -07:00
Behdad Esfahbod
9987b7e14e [gvar] Use array.array to decode deltas 2016-03-21 10:12:26 -07:00
Cosimo Lupo
83f074aac4 [feaLib] use shorter fea_path and fea_data kwargs in addOpenTypeFeatures
as discussed here: https://github.com/behdad/fonttools/pull/547/files#r56807232
2016-03-21 12:18:32 +00:00
Sascha Brawer
d268206fdd Merge pull request #555 from anthrotype/fealib-ignore-names-1-6
[fealib] ignore nameIDs 1-6 in parser and issue a warning
2016-03-21 12:14:56 +01:00
justvanrossum
ad386ee477 Keep Format attribute for OT subtables. This value may be ignored by the compiler but is useful for debugging. Part of fixing #92. 2016-03-21 12:12:05 +01:00
Cosimo Lupo
694b9d6917 [feaLib.parser_test] add test for ignored nameIDs 1-6 2016-03-21 11:02:03 +00:00
Cosimo Lupo
5efc85873b [feaLib.parser] issue a warning and ignore 1 <= nameID <= 6 (like makeotf) 2016-03-21 11:01:33 +00:00
Just van Rossum
a11c8d610f Merge pull request #554 from schriftgestalt/master
Disable optimisations when decompiling TrueType instructions
2016-03-21 07:47:52 +01:00
schriftgestalt
b09c5baa15 Disable optimisations when decompiling TrueType instructions 2016-03-20 22:26:22 +01:00
Cosimo Lupo
b2ac89cc42 [apply-feature-file.py] swap args position in addOpenTypeFeatures func call
this changed in commit 5e64857b975c842acadd0eba859c689a23c81b63

Fixes #553
2016-03-20 19:31:28 +00:00
Sascha Brawer
7eed24725f Allow include statements not terminated by a semicolon
The lexer passes the semicolon to the parser, which will read over it.
Resolves https://github.com/behdad/fonttools/issues/552.
2016-03-20 17:26:20 +01:00
Sascha Brawer
9ec04f0537 Merge pull request #547 from adrientetar/patch-2
feaLib: support string input
2016-03-20 09:09:06 -07:00
Adrien Tétar
492df7359b feaLib: fix tests 2016-03-20 15:01:33 +01:00
Sascha Brawer
cf81e8adeb Merge pull request #551 from khaledhosny/fealib-base
[feaLib] Support BASE table
2016-03-20 04:57:49 -07:00
Khaled Hosny
1ac37d7d00 [feaLib] Support BASE table
Just the parts documented a currently implemented by Adobe’s
implementation.
2016-03-20 13:36:02 +04:00
Cosimo Lupo
c3056bcae5 Merge pull request #550 from khaledhosny/fealib-featurename
[feaLib] Support stylistic set featureNames and size feature
2016-03-19 18:29:01 +00:00
Khaled Hosny
40be0e6f3a [feaLib] Support size feature 2016-03-19 21:55:24 +04:00
Khaled Hosny
6e291cf705 [feaLib] Fix parsing float numbers
Numbers with integral parts >= 10 were incorrectly parsed as integers as
next_char always pointed to the second number not the decimal point.
2016-03-18 18:42:59 +04:00
Khaled Hosny
9feaab13aa [feaLib] Support stylistic set featureNames
Does not handle featureNames for cvXX features, but it shouldn’t be hard
for someone to extend the code to support them if inclined to do so.
2016-03-18 14:08:00 +04:00
Khaled Hosny
53dc98be55 [feaLib] Fix parsing name records
Don’t override supplied encoding and language ids.
2016-03-18 14:06:33 +04:00
Sascha Brawer
6a07beb699 Merge pull request #548 from mashabow/spec9e
[feaLib] Fix typo in testdata/spec9e.*
2016-03-16 17:48:27 -07:00
Masaya Nakamura
1adb1ad9e8 [feaLib] Fix typo in testdata/spec9e.*
Feature File Spec itself was fixed in https://github.com/adobe-type-tools/afdko/pull/110
2016-03-17 09:44:20 +09:00
Adrien Tétar
5e64857b97 feaLib: support string input 2016-03-15 20:01:29 +01:00