summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/char-enc.lua
diff options
context:
space:
mode:
authorTaco Hoekwater <taco@elvenkind.com>2011-06-01 08:54:21 +0000
committerTaco Hoekwater <taco@elvenkind.com>2011-06-01 08:54:21 +0000
commitd7ccb42582f85acf30568913610ccf4d602023fb (patch)
tree7292e3545a420676878e7451b68892d360c62cb6 /Master/texmf-dist/tex/context/base/char-enc.lua
parent2d62a6fe9b80def59c392268022f1f9a2d6e358f (diff)
commit context 2011.05.18
git-svn-id: svn://tug.org/texlive/trunk@22719 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/context/base/char-enc.lua')
-rw-r--r--Master/texmf-dist/tex/context/base/char-enc.lua42
1 files changed, 32 insertions, 10 deletions
diff --git a/Master/texmf-dist/tex/context/base/char-enc.lua b/Master/texmf-dist/tex/context/base/char-enc.lua
index 45f404ee985..ef6805e54f3 100644
--- a/Master/texmf-dist/tex/context/base/char-enc.lua
+++ b/Master/texmf-dist/tex/context/base/char-enc.lua
@@ -6,11 +6,14 @@ if not modules then modules = { } end modules ['char-syn'] = {
license = "see context related readme files"
}
--- thanks to tex4ht for these mappings
+-- Thanks to tex4ht for these mappings.
-characters = characters or { }
+local allocate, setinitializer = utilities.storage.allocate, utilities.storage.setinitializer
-characters.synonyms = {
+characters = characters or { }
+local characters = characters
+
+characters.synonyms = allocate { -- afm mess
angle = 0x2220,
anticlockwise = 0x21BA,
arrowaxisleft = 0x2190,
@@ -141,23 +144,42 @@ characters.synonyms = {
Yen = 0x00A5,
}
-if not characters.enccodes then
+--~ if not characters.enccodes then
+--~
+--~ local enccodes = { } characters.enccodes = enccodes
+--~
+--~ for unicode, data in next, characters.data do
+--~ local encname = data.adobename or data.contextname
+--~ if encname then
+--~ enccodes[encname] = unicode
+--~ end
+--~ end
+--~
+--~ for name, unicode in next, characters.synonyms do
+--~ if not enccodes[name] then enccodes[name] = unicode end
+--~ end
+--~
+--~
+--~ end
+--~
+--~ storage.register("characters.enccodes", characters.enccodes, "characters.enccodes")
+
+-- As this table is seldom used, we can delay its definition. Beware, this means
+-- that table.print would not work on this file unless it is accessed once. This
+-- why the serializer does a dummy access.
- local enccodes = { }
+local enccodes = allocate() characters.enccodes = enccodes
+local function initialize()
for unicode, data in next, characters.data do
local encname = data.adobename or data.contextname
if encname then
enccodes[encname] = unicode
end
end
-
for name, unicode in next, characters.synonyms do
if not enccodes[name] then enccodes[name] = unicode end
end
-
- characters.enccodes = enccodes
-
end
-storage.register("characters.enccodes", characters.enccodes, "characters.enccodes")
+setinitializer(enccodes,initialize)