summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/oldstandard/fonttable.lua
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/fonts/oldstandard/fonttable.lua')
-rw-r--r--Master/texmf-dist/doc/fonts/oldstandard/fonttable.lua36
1 files changed, 36 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fonts/oldstandard/fonttable.lua b/Master/texmf-dist/doc/fonts/oldstandard/fonttable.lua
new file mode 100644
index 00000000000..d50a3146807
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/oldstandard/fonttable.lua
@@ -0,0 +1,36 @@
+-- the following is adapted from https://tex.stackexchange.com/a/380780
+ft = {}
+function ft.print_glyphs(maxCols,maxChars)
+ local id = font.current()
+ local fnt = font.getfont(id)
+ local col = 1
+ local maxU4 = 15*(16^3+16^2+16+1)
+ a = {}
+ for k, v in pairs(fnt.characters) do
+ a [#a + 1] = k
+ end
+ table.sort(a)
+ for i, k in ipairs(a) do
+ if i >= maxChars then break end
+ if col == 1 then
+ if k > maxU4 then
+ tex.sprint(string.format("U+%06x", k))
+ else
+ tex.sprint(string.format("U+%04x", k))
+ end
+ tex.sprint("&")
+ end
+ if (i) then
+ tex.sprint(string.format([[\char%i]], k))
+ else
+ tex.sprint("~")
+ end
+ if col == maxCols then
+ tex.sprint([[\\\cline{2-]] .. maxCols+1 .. "} ")
+ col = 1
+ else
+ tex.sprint("&")
+ col = col + 1
+ end
+ end
+end