summaryrefslogtreecommitdiff
path: root/src/luaotfload-database.lua
Commit message (Collapse)AuthorAgeFilesLines
* [db] resolve symlinks when traversing the file systemPhilipp Gesang2016-06-081-31/+41
| | | | | | | | | Addresses #359 and #325 To avoid duplicate entries, paths have to be resolved before collecting them. This necessitates loop detection of some sort, currently implemented naively as a flat table containing the directories already traversed.
* [db] include values of missing fields in diagnosticPhilipp Gesang2016-06-071-2/+3
|
* [db] fix name assignmentPhilipp Gesang2016-05-311-11/+34
| | | | | | | | | Address issue #356 The DejaVu Family needs stricter handling of fallback choices so we take the font’s avertised width into consideration. This used to be easier with the old loader since it had some decent heuristics in place for the more or less reliable “fontstyle_name”.
* [db] ditch fontforge compatibility codePhilipp Gesang2016-05-261-179/+116
| | | | | | | | Remove all the FF stuff and the config option. The transition is complete, no need to keep these things around any longer. Since we won’t be going back to the FF loader we might as well dispose of the junk identifiers and the translation layer as well.
* [db] fix inclusion of AFM fontsPhilipp Gesang2016-05-091-14/+19
| | | | | The assumption that the AFM/PFB pair will reside in the same directory together is wrong for TeX Live. Hence the new lookup against kpse.
* [db] restrict bold style fallback heuristicPhilipp Gesang2016-04-271-7/+15
| | | | | | @dohyunkim pointed out that due to the too broad criteria, secondary style variants like “heavy”, “black” ended up getting picked over the actual “bold”.
* [db] disarm fallback assignmentPhilipp Gesang2016-04-271-6/+6
| | | | | | | When adapting to the new loader we repeated the mistake of classifying “bold” faces by too broad criteria, thereby sabotaging the recognition of large families from Adobe. Restore the old behavior by only treating those faces as bold fallback that advertise and exact weight of 700.
* [db] adapt call to getinfo() for revised interfacePhilipp Gesang2016-04-271-3/+10
|
* [db] fix family / style matchingPhilipp Gesang2016-04-271-65/+24
| | | | | | | | | | Fix #342 Due to the reassigned fontname fields, certain values designating styles ended up being interpreted wrongly and members of the font families ended up in the wrong table. Thanks to @dohyunkim for spotting the issue.
* [db] fix version fieldPhilipp Gesang2016-04-241-1/+1
| | | | | | | Fix #337 This amends the apparent failure of luaotfload-tool as reported by @eg9 and others.
* [db,loaders] clarify support for PFBPhilipp Gesang2016-04-241-3/+4
| | | | | | | | | | The current PFB loader, although it is indeed completely independent of the FF libraries, is not yet feature complete. Only the loading of vectors is supported which suffices for font rendering given the AFM information. According to Hans, we have decent chance of it growing into a full-fledged reader for 1.0.
* Revert "[db,conf] drop support for PS fonts"Philipp Gesang2016-04-211-6/+64
| | | | | | | | This reverts commit c4c250414a83cc8c4ae99d286ed69a3763510609. Partially, anyways: All mentions of the PFA format were stripped. Since the new loader adds back in support for PFB-flavored PS fonts without AFM we should support it from Luaotfload as well.
* [*] remove references to obsolete formats (PF{A,B}, DFONT, FEA)Philipp Gesang2016-04-201-5/+3
| | | | | | | Thanks to @dohyunkim for reminding me to be thorough! At least in our own files. A patch has been sent upstream to apply the same change to the generic loader.
* [db,conf] drop support for PS fontsPhilipp Gesang2016-04-201-66/+5
| | | | | The “AFM” code stays since PFB accompanied by an AFM file is still supported by the fontloader.
* [*] shred 2014 fontloaderPhilipp Gesang2016-04-191-1/+0
| | | | | | This one hasn’t been touched for ages. The will be no compatibility loader this year. For testing, creating a loader on the fly from the Git repos is sufficient.
* [db,fontloader] fix subfont table handling (by Dohyun Kim)Philipp Gesang2016-04-181-1/+1
| | | | | | TTC subfonts must be considered if there is at least one subfont. Discovered and fixed by @dohyunkim; the fix for ``font-otr.lua`` goes upstream.
* [db] fix misleading error messagePhilipp Gesang2016-04-181-4/+2
| | | | | | | No such warnings with the new loader. Instead we need to test for the ``fontname`` / ``fullname`` fields. Thanks to @dohyunkim for reporting.
* [db] undo commented out texmf tree processingPhilipp Gesang2016-04-171-1/+1
| | | | D’oh! Too much debugging =)
* [db] fix extraction of name info important for family clusteringPhilipp Gesang2016-04-151-76/+98
| | | | | | | … or perhaps more accurately, “megafamily”. For the time being we prefer the “windows” versions of the fonts due to the higher quality of the “typographic family” and “subfamily” fields. Another advantage of the new loader over FF is that we’re even given that choice.
* [db] pull raw name information with getinfo()Philipp Gesang2016-04-131-3/+9
| | | | | | This facility was added by Hans to accomodate our peculiar requirements: There should be no fallback from prefmodifiers to familyname since that removes valuable information about larger font sets like the Adobe ones.
* [db] add some stats regarding the new loaderPhilipp Gesang2016-04-131-25/+99
|
* [db] adjust names extraction to Lua loaderPhilipp Gesang2016-04-121-59/+79
|
* [db] in ff mode, collect font object after accessPhilipp Gesang2016-04-101-3/+1
|
* [db] do not rely on __gc for font object lifetimesPhilipp Gesang2016-04-101-0/+5
| | | | | | | The penalty for having font object closed automatically is huge: It takes around nine seconds more to rebuild the font database: 58 s with __gc, 49 s by closing manually. Even if it’s not the default, we reintroduce the code for closing fonts manually to avoid that situation.
* [conf,db] allow switching back to fontforgePhilipp Gesang2016-04-091-4/+17
| | | | | | There are some non-negligible differences in the reader output, especially concerning font names. Until this is sorted out we need a fast way to switch back to the old code for reference.
* [tool,db] kill off fontforgePhilipp Gesang2016-04-091-39/+12
| | | | | | | | This has been coming for some time: Upstream now provides full Opentype reader capabilities. This allows Luatex to drop those horrible fontforge libraries. Since the API is pretty similar, for Luaotfload it means little change and a decent speed gain. Though we still need to investigate whether the result is equivalent or at least acceptable.
* [db] ditch our gzip wrappersPhilipp Gesang2016-04-081-41/+4
| | | | | We again depend on the full Lualibs set for some time so our wrappers are irrelevant as we can just use the similar once from there.
* [*] update dates, versionPhilipp Gesang2016-04-071-1/+1
|
* [features,loaders] fix lookup conflicts via introduction of “evl” lookupPhilipp Gesang2016-02-191-2/+2
| | | | | | | | This introduces a forced lookup type “evl” that bypasses the other methods. The specification is extended with the correct values including a more meaningful hash string. As a result, the loader no longer attempts to interpret the specification as a “file:” request but the backend can still resolve the necessary files.
* [*] bump version and datePhilipp Gesang2015-12-091-2/+2
| | | | | We still had some 2014 values lingering around dark corners. In theory this is all meaningless wrt. the Git repo.
* [tool,db] make cache directives work againPhilipp Gesang2015-11-281-1/+1
| | | | | These were rendered unusable due to the suspended initialization. Creating the directives mapping on the fly is just as good.
* [db] fix search path construction on Win hostsPhilipp Gesang2015-11-221-1/+1
| | | | | | | | | | This seems to help with the examples from #165 that rely on setting ``$OPENTYPEFONTS`` via the environment. Referencing a non-existing value caused a branch to always pick Unix path separators. The affair was pretty insidious since the paths we received from kpse were sane so the behavior was only triggered with manual overrides.
* [db] emit message when skipping PWDPhilipp Gesang2015-11-221-1/+5
|
* [db] adapt log behavior of font path searchPhilipp Gesang2015-11-221-6/+6
|
* [db] omit duplicate entries from fuzzed lookup resultsPhilipp Gesang2015-10-301-2/+22
|
* [tool,resolvers,db] fix references to the fonts tablePhilipp Gesang2015-10-291-1/+2
| | | | This makes the ``--find`` option to luaotfload-too work again.
* [db] fix passing inverse format listPhilipp Gesang2015-10-291-2/+3
|
* [db] fix access to restructured globalsPhilipp Gesang2015-10-281-10/+10
|
* [db] fix behavior when starting with no dataPhilipp Gesang2015-10-281-3/+8
|
* [main, *] convert for centralized initialization routinePhilipp Gesang2015-09-271-3/+3
|
* [main, db] convert for deferred initializationPhilipp Gesang2015-09-271-214/+226
| | | | | Also clean up the local name of the logger for consistency with the rest of the code base.
* [db] write database if some files no longer exist on diskPhilipp Gesang2015-07-261-12/+35
| | | | | | | Addresses issue #278: https://github.com/lualatex/luaotfload/issues/278 ATM only files whose full path is stored in the db are considered. Needs checking whether this works for TEXMF fonts too.
* [main,init,db,resolvers] separate resolvers from main into separate filePhilipp Gesang2015-07-231-31/+32
|
* [db,tool] prevent database rebuild when querying version infoPhilipp Gesang2015-06-191-4/+12
| | | | | | Reported by /u/ThomasFehige on Github: https://github.com/lualatex/luaotfload/issues/275#issuecomment-113515484
* [db,tool,conf] fix thinko in db update suppressionPhilipp Gesang2014-07-261-3/+3
| | | | | The ``db.update-live`` option caused all db updates, even forced ones to fail due to a missing check for the kind of run.
* [log,db] fix options to os.date() on non-posix systemsPhilipp Gesang2014-07-161-1/+1
| | | | | | | | | Fixes https://github.com/lualatex/luaotfload/issues/233 On non-POSIX systems, the Lua interpeter is compiled with a reduced set of options accepted by ``os.date()`` [0]. [0] http://www.lua.org/source/5.2/loslib.c.html#LUA_STRFTIMEOPTIONS
* [db] remove the alternative (and buggy) verbose file lookupPhilipp Gesang2014-07-121-62/+28
| | | | | Also document the file lookup somewhat and rename it to ``font_file_lookup()``.
* aux: add helpers for accessing the index table/index filePhilipp Gesang2014-06-041-0/+14
|
* [db,tool] add db creation and modification time to version messagePhilipp Gesang2014-05-151-0/+7
|
* [db] store creation and modification time in meta tablePhilipp Gesang2014-05-151-5/+11
|