-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Map the checking routines performed by third-party tools and how/if they overlap with native FontBakery checks #1541
Comments
I'm not sure. But sometimes I think they report useful stuff.
They are logged, or? We could improve that a bit though. |
Ah yes, sorry they are logged. I'll look into them in more detail soon. |
I am all for people using Font Validator more (and commission/fund me working on it...), but a couple of things that font forge does hasn't got equivalent tests in Font Validator (yet). Also font forge has a rather large memory foot print, so indeed, you might/should use the Font Validator's tests if they are available. BTW, a 4000-line python file should probably be re-factored :-). The equivalent part to the python code you refered to above is part of the glyf table test and the maxp table tests. I think you want to have a look at the Sorry there is no overall view of the glyf test - TODO - the best I could suggest is to look at the chm file https://github.com/HinTak/Font-Validator/blob/master/bin/FontValidatorHelp.chm and have a look at all the E11XX/W11XX/I11XX/P11XX/A11XX status messages. It certainly detects "contour intersects", "Contours have correct directions", but perhaps not "Glyphs have points at extremas" . Argh, I was wrong about the last part. Font Validator can emit a "W1112: Not all extremes are marked with the on-curve control points" message. Perhaps the best summary on what glyf table test does and does not do , I can give you, is this issue I filed myself: |
BTW, maxp related status codes are E19XX/W19XX/I19XX's. E for error, w for warning, I for information, A for application error [i.e. FontVal itself choked on something], P for pass, then the two digits are organized by table. 11 is glyf and 19 is maxp. They were alphabetical in the beginning, but newer tables are added to the end... As you see from microsoft/Font-Validator#15 , the documentation for glyf table test is not as organized/centralized as the other tables . The bulk of the content of the chm is generated from https://github.com/HinTak/Font-Validator/blob/master/GenerateFValData/OurData.xml, except the glyf table tests. |
It's an ongoing effort. |
I think that a list of all tests from all tools (native FontBakery, MS FVal, FontForge, etc...) and the equivalences among them would be neat to have if anyone is willing to put the effort into documenting what currently exists... |
@m4rc1e you asked,
I believe this is now done. Please confirm and close. |
100% of them? The headless Font Forge is a truly ugly dependency, but, if there is a single thing it checks that nothing else checks, we must keep it. |
OK. There are a few different issues described here:
I believe that we can rename this issue so that the goal is to map the equivalency of the test-suites provided by each of the third-party tools and how they relate to the FontBakery native tests. And this can be a long-term issue that may or may not lead to ditching some dependencies in the future. |
trying to summarize, these are separate issues because:
|
This mapping of third-party features is not doable within this week, so I'll move it to a future milestone. |
I feel the new Font Validator covers these checks better, https://github.com/googlefonts/fontbakery/blob/master/Lib/fontbakery/specifications/googlefonts.py#L1411-L1564
I would like the results of the MS Validator reports to get logged to the cmdline.
Also, the headless Font Forge is a truly ugly dependency
@felipesanches edited this on 2017-Sept-22
The goal here is to come up with a comparative table describing the checks provided by each of the third-party font-linters such as Font-Forge, MSFVal, etc and how do they relate to / overlap with FontBakery explicit suite of font checks.
This table can help us decide whether to keep the dependencies or if we'd be better porting the (few?) additional checks provided by them into native FontBakery python code and ditch the dependencies.
The text was updated successfully, but these errors were encountered: