summaryrefslogtreecommitdiff
path: root/tex/context/base/font-afm.lua
diff options
context:
space:
mode:
authorMarius <mariausol@gmail.com>2011-01-31 18:40:12 +0200
committerMarius <mariausol@gmail.com>2011-01-31 18:40:12 +0200
commit8f0a9674137499392552a70d470f614f0eb98b6c (patch)
tree6d67600678dc90e269c2800f9609e78f307254a1 /tex/context/base/font-afm.lua
parentcf65f174d2b790545f27134a5d41d39c942a1d5b (diff)
downloadcontext-8f0a9674137499392552a70d470f614f0eb98b6c.tar.gz
beta 2011.01.31 16:59
Diffstat (limited to 'tex/context/base/font-afm.lua')
-rw-r--r--tex/context/base/font-afm.lua15
1 files changed, 10 insertions, 5 deletions
diff --git a/tex/context/base/font-afm.lua b/tex/context/base/font-afm.lua
index ff2078e73..635780ac9 100644
--- a/tex/context/base/font-afm.lua
+++ b/tex/context/base/font-afm.lua
@@ -179,7 +179,7 @@ local function get_variables(data,fontmetrics)
end
local function get_indexes(data,pfbname)
- data.luatex.filename = pfbname
+ data.luatex.filename = resolvers.unresolve(pfbname) -- no shortcut
local pfbblob = fontloader.open(pfbname)
if pfbblob then
local characters = data.characters
@@ -330,15 +330,19 @@ function afm.load(filename)
end
end
+local uparser = fonts.map.makenameparser()
+
unify = function(data, filename)
- local unicodevector = fonts.enc.load('unicode').hash
+ -- local unicodevector = fonts.enc.load('unicode').hash
+ local unicodevector = fonts.enc.agl.unicodes
local glyphs, indices, unicodes, names = { }, { }, { }, { }
local verbose, private = fonts.verbose, fonts.privateoffset
for name, blob in next, data.characters do
local code = unicodevector[name] -- or characters.name_to_unicode[name]
if not code then
- local u = match(name,"^uni(%x+)$")
- code = u and tonumber(u,16)
+ -- local u = match(name,"^uni(%x+)$")
+ -- code = u and tonumber(u,16)
+ code = lpegmatch(uparser,name)
if not code then
code = private
private = private + 1
@@ -367,7 +371,8 @@ unify = function(data, filename)
data.glyphs = glyphs
data.characters = nil
local luatex = data.luatex
- luatex.filename = luatex.filename or file.removesuffix(file.basename(filename))
+ local filename = luatex.filename or file.removesuffix(file.basename(filename))
+ luatex.filename = resolvers.unresolve(filename) -- no shortcut
luatex.unicodes = unicodes -- name to unicode
luatex.indices = indices -- unicode to index
luatex.marks = { } -- todo