105 Commits

Author SHA1 Message Date
Erik van Blokland
6aece98207 Add note about multiple unicode values. 2017-08-25 13:45:55 +02:00
Erik van Blokland
ddbc9c212f Ignore new test files. 2017-08-25 13:42:44 +02:00
Erik van Blokland
2a425c7224 Add a test for writing unicode values to a glyph. 2017-08-25 13:41:21 +02:00
Erik van Blokland
7a5c21c910 The unicode attribute of the glyph element can contain multiple unicode values, separated by spaces.
See c05145b626
2017-08-25 13:17:25 +02:00
Erik van Blokland
735edc7e61 Merge remote-tracking branch 'origin/mutedGlyphNames_issue15' 2017-08-16 14:21:51 +02:00
Erik van Blokland
f9daaf6690 ufoProcessor: add a convenience build() function to handle the processing of a document.
Handle font.lib better, add some tests.
2017-08-16 14:18:35 +02:00
Erik van Blokland
51ddbfaf19 Merge pull request #18 from anthrotype/py3-items
[ufoProcessor] convert location dict_items to list
2017-08-11 14:27:35 +02:00
Cosimo Lupo
16a0519f8a [ufoProcessor] convert location dict_items to list
Fixes #17
2017-08-07 10:29:39 +01:00
Erik van Blokland
8e3705472e Bah, bunch of localisation edits in this one as well. That was not intended. But let's see if it works. Changed in ReadMe about adding mute information to instance glyph elements. 2017-07-27 14:59:12 +02:00
Erik van Blokland
07cb0c3ac1 Localised names roundtrip in test. 2017-07-27 14:51:35 +02:00
Erik van Blokland
d4d1224574 Merge branch 'master' of https://github.com/LettError/designSpaceDocument 2017-05-13 10:56:37 +02:00
Erik van Blokland
1f3bdeb1c0 Cleaner ints 2017-05-13 10:56:14 +02:00
Erik van Blokland
de21a5b300 Merge pull request #14 from LettError/localised-names
Localised names
2017-05-13 10:52:56 +02:00
Erik van Blokland
3f54b9969e Add test.
Not adding localised names to UFO3 nametable yet. Need more info.
2017-05-13 10:46:49 +02:00
Erik van Blokland
63a14e32bc Merge pull request #12 from moyogo/intorfloat
use intOrFloat() for attributes of axis and map
2017-05-13 10:21:18 +02:00
Denis Moyogo Jacquerye
06f5b11b85 use intOrFloat() for attributes of axis and map 2017-05-05 16:10:26 +01:00
Erik van Blokland
c27e22ce77 Pass axis minimum, default and maximum values through self.intOrFloat() to tidy up the xml a bit. 2017-04-24 10:19:57 +02:00
Erik van Blokland
c81fb4068d Roundtrip localised names. 2017-04-23 23:27:41 +02:00
Erik van Blokland
5a21c9299c Write some localised name elements for an instance. Assume "en" is the default language code. 2017-04-23 16:16:22 +02:00
Erik van Blokland
3b27469c04 sketch out localisable names following ideas from #9 2017-04-23 15:39:17 +02:00
Erik van Blokland
87648c31d0 Merge pull request #11 from brawer/bug-10
Make the order of location elements deterministic
2017-04-23 15:10:08 +02:00
Sascha Brawer
1328036a1b Make the order of location elements deterministic
Fixes https://github.com/LettError/designSpaceDocument/issues/10.
2017-04-11 18:20:57 +02:00
Erik van Blokland
29a6ac029a Merge pull request #7 from brawer/ot-compliance
Make examples in designspace specification compliant to OpenType spec
2017-04-11 15:48:27 +02:00
Sascha Brawer
7085cbe8aa Make examples in designspace specification compliant to OpenType spec
Before this change, the designspace specification was using examples
whose values (for width and weight) would be in violation of the
OpenType specification.

Added a link to the relevant part of the OpenType specification,
so that people can easier find it.
2017-04-08 22:21:53 +02:00
Erik van Blokland
22d8100e4c As with MutatorMath, it's nicer to use enumerate. 2017-03-29 00:08:25 +02:00
Erik van Blokland
82e48b95b7 Source elements may not have a name attribute, but it is needed for for some processes afterwards.
If the element does not have one: create a new one with pattern "temp_master.%d"%(sourceCount).
The document writer then checks for source name attributes with this pattern so that is does not export.
2017-03-28 23:00:13 +02:00
Erik van Blokland
1b4106981e Better logic for overwriting exisiting axes in checkAxes() 2017-03-27 15:00:07 +02:00
Erik van Blokland
089bafa38c Update scripting.md 2017-03-27 14:57:42 +02:00
Erik van Blokland
73a5420ac4 Update scripting.md 2017-03-27 10:14:50 +02:00
Erik van Blokland
ab0daf0e34 Merge branch 'master' of https://github.com/LettError/designSpaceDocument 2017-03-26 15:24:08 +02:00
Erik van Blokland
ff8e75f046 Update README.md
Switched minimum and maximum value in example of condition element.
2017-03-26 15:23:01 +02:00
Erik van Blokland
07f72838a6 Update README.md
Change to example of condition element: the axis is identified by axis name, not axis tag.
2017-03-26 15:14:51 +02:00
Erik van Blokland
36425a83f6 Add some warnings if we can't make mutators for some reason. 2017-03-20 14:21:58 +01:00
Erik van Blokland
81087f79bd Use tagForAxisName to get tag and labelnames for axes we know. 2017-02-26 11:29:50 +01:00
Erik van Blokland
3a72046b48 Merge pull request #4 from moyogo/readme
README: XML element should be `labelname` in the examples
2017-02-26 10:20:36 +01:00
Erik
48a6684b34 Remove unnecessary print. 2017-02-23 22:54:08 +01:00
Erik
a089ffe4c3 Even more explicit check for the presence of axes elements in the document. 2017-02-23 11:06:22 +01:00
Erik
0acaa233eb Better check if there are no axes in a document. 2017-02-22 11:15:10 +01:00
Erik
c31da9df47 Some legacy documents do not have an <axes> element. This causes problems reading and processing the file.
If there are no defined axes, use the available names from locations in the document. New axes are tagged with "_" as first letter. There is no guarantee that the guessed axes have the same dimensions as the originals.
2017-02-21 15:47:09 +01:00
Denis Moyogo Jacquerye
efd3d5a066 README: XML element should be labelname in the examples 2017-02-20 12:05:36 +00:00
Erik
22ce159ecd Merge remote-tracking branch 'origin/relative-paths'
# Conflicts:
#	Lib/designSpaceDocument/__init__.py
2017-02-06 22:35:55 +01:00
Erik
a7b9879e42 Ignore some tests. 2017-02-06 22:34:05 +01:00
Erik
6ba727bed3 More testcases for the relaive path processing. 2017-02-06 22:33:03 +01:00
Erik
1dd261f6e6 Add comment. 2017-02-06 14:40:20 +01:00
Erik
6e724af43b Clarified how designSpaceDocument object handles the filename and path attributes of the descriptors. 2017-02-06 14:17:56 +01:00
Erik
e102c5e992 Tests to verify the handling of filename and path attrs. 2017-02-06 10:29:59 +01:00
Erik
13abae94c5 New "filename" attribute for source and instance descriptor objects that contains the relative path to the ufo.
So we have:
descriptor.filename: the path to the UFO, relative to the documentpath
descriptor.path: the resolved, absolute path to the UFO

This means we have to be aware of  a couple of situations, described in updatePaths() and testPatgNameResolve().
Case 1: both filename and path attributes are None. Action: write the descriptor as is, without filename attr.
Case 2: filename attribute points somewhere, but the path attribute is None. So we can't actually verify if the UFO really exists, but we don't have to. Action: write the filename attribute as is. We could calculate a new path though.
Case 3: filename attribute is None, path attribute has a path. So there is no legacy value for filename that we need to look out for. Action: we can calculate a new relative path and store that in filename.
Case 4: filename and path attributes are not None, but they're in conflict, pointing to different places/ So the absolute path of the UFO and the absolute path of the document produce a different relative path than is stored in filename. One of them must be wrong.

When a new filename is set, make sure to set the path attribute to None and vice versa.
2017-02-04 18:17:20 +01:00
Erik
dc483f9c17 Not sure why this string does not compare, but it is not vital and I want the tests to be clear. 2017-02-04 15:16:00 +01:00
Erik
91d4b89cd0 filename attr to store the actual string of the relative path. path attr to store the absolute path to the file (if we can find it) 2017-02-04 10:30:03 +01:00
Erik
146bcd078d Option to only process specific glyphnames in ufoProcessor. 2017-01-29 11:56:17 +01:00