https://tox.readthedocs.io/en/latest/config.html#conf-skip_missing_interpreters
Runing `tox` with no options runs the tests agaist all the python
environments listed in the `tox.ini`'s `envlist` (currently 3.6, 3.7 and 3.8).
Before this change, if any of these versions was not available, tox would exit with an error. Now it will simply continue (with a warning).
This can be useful when on a developer box, one might only have a subset of all our supported interpreters installed but we don’t want to mark the build as failed because of it.
Note that on the CI I am passing the opposite command line switch to override this setting, because there I want to make sure none of the specified interpreters is skipped.
Also, implement merging version 5 (by taking the min/max of the optical
point sizes), and rename `usMaxContex` to the correct name `usMaxContext`.
The typo was fixed in the OS/2 table some time ago, but we forgot to
also update the merge module.
Fixes#1865
[docs] Document feaLib
* Rearrange docs by user intention, highlighting the things you can do with each component.
* Remove reference to lexer and error modules from documentation tree, since they’re not user-facing.
* I’ve added docstrings to the parser even though we only provide access to the user-facing part of the API in the main documentation, just to clarify what some of the more obscure methods do and provide links to the spec.
* AST *is* user-facing if you’re building your own feature files in code, so all classes are documented with the user in mind.
Note UI change : `fonttools varLib.models` now takes prefixed options `-d` or `-l` instead of guessing the intended feature from the number of arguments.
We have a number of command line tools which are somewhat opaque. (varLib.models in particular was very confusing.) This ensures that they all use argparse to have a consistent interface, and all have --help documentation which at least details their parameters, and hopefully therefore gives more of a clue about what they do. Those which use logging have had a command-line logging parameter added.
Does not add any new documentation (there is already some documentation for user-facing functions). It just makes colorLib.builder the top-level documentation entry, because that’s the part the user needs to care about.
This adds a `help` verb (and `--help` option) to the `fonttools` command line tool. Submodules will be listed in the help text if they have an importable `main` function with a docstring, and `main`'s docstring will be used as the one-line description for the help text.
This allows for more than one "lookup ..." chaining statements at each glyph position in a chaining contextual substitution or positioning rule: e.g.
sub a b c' lookup lookup1 lookup lookup2 d;
The corresponding change in the Adobe OpenType Feature File Specification (and implementation in makeotf) happened in adobe-type-tools/afdko#1132.
Fixes https://github.com/fonttools/fonttools/issues/1879
In ChainContext{Subst,Pos}Format3, the array of input coverages is called
InputCoverage, whereas in non-Chain Context{Subst,Pos}Format3 subtables it
is called simply Coverage.
* add nameTable.findMultilingualName(), to find an existing multilingual name
* Make addMultilingualName() reuse nameIDs if possible when asking for a new nameID, by calling findMultilingualName()