diff options
Diffstat (limited to 'tex/context/base/file-syn.lua')
-rw-r--r-- | tex/context/base/file-syn.lua | 102 |
1 files changed, 51 insertions, 51 deletions
diff --git a/tex/context/base/file-syn.lua b/tex/context/base/file-syn.lua index 60dcb462d..8d913bb37 100644 --- a/tex/context/base/file-syn.lua +++ b/tex/context/base/file-syn.lua @@ -1,51 +1,51 @@ -if not modules then modules = { } end modules ['file-syn'] = {
- version = 1.001,
- comment = "companion to file-syn.mkvi",
- author = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
- copyright = "PRAGMA ADE / ConTeXt Development Team",
- license = "see context related readme files"
-}
-
-local report_files = logs.reporter("files")
-
-environment.filesynonyms = environment.filesynonyms or { }
-local filesynonyms = environment.filesynonyms
-
-local settings_to_array = utilities.parsers.settings_to_array
-local findfile = resolvers.findfile
-
-storage.register("environment/filesynonyms", filesynonyms, "environment.filesynonyms")
-
-local function truefilename(name)
- local realname = filesynonyms[name] or name
- if realname ~= name then
- return truefilename(realname)
- else
- return realname
- end
-end
-
-environment.truefilename = truefilename
-
-function commands.truefilename(name)
- context(truefilename(name))
-end
-
-function commands.definefilesynonym(name,realname)
- local synonym = filesynonyms[name]
- if synonym then
- interfaces.showmessage("files",1,{ name or "?", realname or "?", synonym or "?" })
- end
- filesynonyms[name] = realname
-end
-
-function commands.definefilefallback(name,alternatives)
- local names = settings_to_array(alternatives)
- for i=1,#names do
- local realname = findfile(names[i])
- if realname ~= "" then
- filesynonyms[name] = realname
- break
- end
- end
-end
+if not modules then modules = { } end modules ['file-syn'] = { + version = 1.001, + comment = "companion to file-syn.mkvi", + author = "Hans Hagen, PRAGMA-ADE, Hasselt NL", + copyright = "PRAGMA ADE / ConTeXt Development Team", + license = "see context related readme files" +} + +local report_files = logs.reporter("files") + +environment.filesynonyms = environment.filesynonyms or { } +local filesynonyms = environment.filesynonyms + +local settings_to_array = utilities.parsers.settings_to_array +local findfile = resolvers.findfile + +storage.register("environment/filesynonyms", filesynonyms, "environment.filesynonyms") + +local function truefilename(name) + local realname = filesynonyms[name] or name + if realname ~= name then + return truefilename(realname) + else + return realname + end +end + +environment.truefilename = truefilename + +function commands.truefilename(name) + context(truefilename(name)) +end + +function commands.definefilesynonym(name,realname) + local synonym = filesynonyms[name] + if synonym then + interfaces.showmessage("files",1,{ name or "?", realname or "?", synonym or "?" }) + end + filesynonyms[name] = realname +end + +function commands.definefilefallback(name,alternatives) + local names = settings_to_array(alternatives) + for i=1,#names do + local realname = findfile(names[i]) + if realname ~= "" then + filesynonyms[name] = realname + break + end + end +end |