1if not modules then modules = { } end modules ['symb-ini'] = {
2 version = 1.001,
3 comment = "companion to symb-ini.mkiv",
4 author = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
5 copyright = "PRAGMA ADE / ConTeXt Development Team",
6 license = "see context related readme files"
7}
8
9local context = context
10local variables = interfaces.variables
11
12fonts = fonts or { }
13
14local symbols = fonts.symbols or { }
15fonts.symbols = symbols
16
17local listitem = utilities.parsers.listitem
18local uselibrary = resolvers.uselibrary
19
20local report_symbols = logs.reporter ("fonts","symbols")
21local status_symbols = logs.messenger("fonts","symbols")
22
23local patterns = {
24 "symb-imp-%s.mkiv",
25 "symb-imp-%s.tex",
26
27 "symb-%s.mkiv",
28 "symb-%s.tex"
29}
30
31local function action(name,foundname)
32 commands.loadlibrary(name,foundname,false)
33 status_symbols("library %a loaded",name)
34end
35
36local function failure(name)
37 report_symbols("library %a is unknown",name)
38end
39
40function symbols.uselibrary(name)
41 if name ~= variables.reset then
42 for name in listitem(name) do
43 uselibrary {
44 name = name,
45 patterns = patterns,
46 action = action,
47 failure = failure,
48 onlyonce = true,
49 }
50 end
51 end
52end
53
54interfaces.implement {
55 name = "usesymbols",
56 actions = symbols.uselibrary,
57 arguments = "string",
58}
59 |