3027 Commits

Author SHA1 Message Date
moyogo
aaad2be5a5 [voltLib] Add anchor, pos, and attach 2016-09-14 17:21:41 +01:00
moyogo
7dffdbece1 [voltLib] Add LC, digits, period, underscore as valid NAME characters in lexer 2016-09-14 17:21:41 +01:00
moyogo
9fb1085c5e [voltLib] convert zip to list in test for Python3 2016-09-14 17:21:41 +01:00
moyogo
1e714c3e52 [voltLib] parse_position_() instead of parse_positioning_() 2016-09-14 17:21:41 +01:00
moyogo
34eaaa9512 [voltLib] Add test for substitution with contexts 2016-09-14 17:21:41 +01:00
moyogo
ffa929b404 [voltLib] Context can take multiple except/in_context, multiple left or right contexts 2016-09-14 17:21:41 +01:00
moyogo
6f4f7849cf [voltLib] Add DEF_LOOKUP to expected tokens in parse() 2016-09-14 17:21:41 +01:00
moyogo
7439ec2482 [voltLib] Better handling of context and coverage 2016-09-14 17:21:41 +01:00
moyogo
a34de5ac00 [voltLib] Fix indentation 2016-09-14 17:21:41 +01:00
moyogo
0f399e3e8d [voltLib] Undefined location in parse_coverage() 2016-09-14 17:21:41 +01:00
moyogo
04e9265cef [voltLib] Split test for def_group: glyphs, glyphs and group, range 2016-09-14 17:21:41 +01:00
moyogo
5571f2c12a [voltLib] Add def lookup, simple substitution 2016-09-14 17:21:41 +01:00
moyogo
c26e3228ce [voltLib] Add coverage, change group and enum 2016-09-14 17:21:41 +01:00
moyogo
8c0a35331e [voltLib] Add parse_coverage_() 2016-09-14 17:21:41 +01:00
moyogo
b0e5016aed [voltLib] Add DEF_Script to error message 2016-09-14 17:21:41 +01:00
moyogo
a6e4b6e425 [voltLib] loop on next_token being GLYPH, GROUP or RANGE instead of not being END_NUM 2016-09-14 17:21:41 +01:00
moyogo
32f8c9c1e7 [voltLib] Add feature definition 2016-09-14 17:21:41 +01:00
moyogo
888c862433 [voltLib] Add script and langsys 2016-09-14 17:21:41 +01:00
moyogo
1c4de40936 [voltLib] expand enum when creating GroupDefinition 2016-09-14 17:21:41 +01:00
moyogo
7ab01f730c [voltLib] Add ranges to GroupDefinition 2016-09-14 17:21:41 +01:00
moyogo
b92829351d [voltLib] Add GroupDefinition tests 2016-09-14 17:21:41 +01:00
moyogo
2ad6c3df12 [voltLib] Add SymbolTable 2016-09-14 17:21:41 +01:00
moyogo
1957fd2cd1 [voltLib] Add Parser and tests 2016-09-14 17:21:41 +01:00
moyogo
34e7a8d904 [voltLib] Add ast.GlyphDefinition 2016-09-14 17:21:41 +01:00
moyogo
3460f2e338 [voltLib] Add Lexer and tests 2016-09-14 17:21:41 +01:00
moyogo
127cdba11d [voltLib] Add VoltLibError 2016-09-14 17:21:41 +01:00
moyogo
da7f946741 [voltLib]: init 2016-09-14 17:21:41 +01:00
Cosimo Lupo
88f7b06ce5 Merge pull request #665 from anthrotype/py23-round
[py23] add round2 and round3 functions
2016-09-13 21:34:23 +02:00
Cosimo Lupo
152c6d81b3 [py23_test] import round2 and round3 in py23_test module 2016-09-13 18:48:18 +02:00
Cosimo Lupo
8de2f44b31 [py23] don't export 'round2' and 'round3' in __all__, only 'round'
No need to pollute the namespace. If one needs one or the other, one can just import that explicitly.
2016-09-13 18:44:30 +02:00
Cosimo Lupo
f07c29c8bc [py23] export 'round' in __all__
(let's see if some of our tests that import * breaks now...)
2016-09-13 07:16:12 +01:00
Cosimo Lupo
b22f8c7310 [py23] in PY2 shadow built-in round with round3; in PY3 simply use built-in round 2016-09-13 07:13:32 +01:00
Cosimo Lupo
c7edcfec30 [py23_test] borrow round() test cases from cpython 2.7 test suite 2016-09-13 07:13:32 +01:00
Cosimo Lupo
ffa03f6566 [py23] add round2 and round3 function for simulating Python 2 and Python 3 built-in round
The implementation is inspired by https://github.com/PythonCharmers/python-future/blob/master/src/future/builtins/newround.py

It adds support for the old Python 2 round, and for negative 'ndigits'
2016-09-13 07:13:32 +01:00
Denis Moyogo Jacquerye
7930106740 feaLib: limit language statements to 1 feature block (#658)
* feaLib: limit language statements to 1 feature block

language exclude_dflt statements should only apply to lookups
defined in their feature block and not to lookups defined
in previous blocks sharing the same feature tag

* feaLib: add BuilderTest::test_FeatureFile_multiple_feature_blocks
2016-08-30 19:44:33 +02:00
Sascha Brawer
aa3b27c663 Merge pull request #655 from JasonAtGithub/master
Fixed encoding error in subset tool in Windows
2016-08-29 15:07:56 +02:00
JasonAtGithub
c61fcb9122 Merge pull request #1 from JasonAtGithub/JasonAtGithub-patch-1
Fixed encoding error in subset tool in Windows
2016-08-29 20:50:41 +08:00
JasonAtGithub
a41c60cb88 Fixed encoding error in subset tool in Windows
Fixed encoding error in subset tool in Windows which system default codepage isn't 65001.
For Example: 
When windows default codepage is 936, the command like 'pyftsubset myfont.ttf --text-file=mytextfile.txt' will throw an exception.
2016-08-29 20:43:33 +08:00
Cosimo Lupo
14740f8ee5 Merge pull request #653 from miguelsousa/cpal
[CPAL] XML enhancements
2016-08-29 12:06:38 +02:00
Miguel Sousa
f502bbba98 [CPAL] write paletteEntryLabels names 2016-08-28 16:24:58 -07:00
Miguel Sousa
3c6537de88 [CPAL] remove extra newline before palette label name 2016-08-28 16:21:21 -07:00
Cosimo Lupo
6ae2a9200e Revert "MANIFEST.in: exclude 'Doc/ttx.1'"
Fixes Travis CI build #1120
https://travis-ci.org/behdad/fonttools/builds/153766422
2016-08-20 11:40:52 +01:00
Cosimo Lupo
c8135baed5 setup.py: install the ttx 'man' page only on Linux 2016-08-20 11:35:49 +01:00
Cosimo Lupo
dd5d442ea6 Revert "Remove old 'Doc/ttx.1'"
This reverts commit fe90e12601b9bea3983ddc1c0ec58303d14bbbe3.

Khaled commented:

> We either need to update the man page or find a way to generate it from other
existing documentation, not just drop it entirely with no replacement

fe90e12601 (commitcomment-18713586)
2016-08-20 11:30:18 +01:00
Cosimo Lupo
48957964bd MANIFEST.in: include 'run-tests.sh' 2016-08-20 01:23:54 +01:00
Cosimo Lupo
51d335c0dc Revert "remove 'run-tests.sh'"
This reverts commit ac7fca7141f4bc81774f97496fda958152aaa3c6.

As the old saying goes, a shell script is worth a thousand words...
2016-08-20 01:20:19 +01:00
Cosimo Lupo
d2e73ca1ab remove 'fontTools' symbolic link in Snippets as not cross-plaftorm 2016-08-19 14:41:18 +01:00
Cosimo Lupo
3cbc97885f MANIFEST.in: use correct glob pattern to only include files under 'testdata' subfolders 2016-08-19 14:38:24 +01:00
Cosimo Lupo
5f94d8b2df MANIFEST.in: include all the files that should be included in source dist
One notable absence was README.md... :)

For the testdata/*, I now use `include_package_data=True` in setup.py, to automatically install any data files found inside package directories that are also specified in MANIFEST.in file.

I also include the Snippets, which I think should belong to the source distribution, despite not being installed as console scripts like ttx, etc.

The MANIFEST.in does not need to include itself (done by default).
2016-08-19 14:21:33 +01:00
Cosimo Lupo
3796a8ba05 setup.py: add 'package_data' for test files
There's no point in installing the test modules if we don't also install the test data.

(BTW, all this stuff would not be necessary if we were to use 'setuptools_scm'
which would just include in the distribution all the files which are tracked by
git version control...)
2016-08-19 13:02:03 +01:00