diff options
author | Hans Hagen <pragma@wxs.nl> | 2013-04-09 16:22:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2013-04-09 16:22:00 +0200 |
commit | a9441c9324d34a75086102dcb376f49b181d18db (patch) | |
tree | 185ae5980f84024dc48a27915643658764bdd1d2 /tex/context/base/data-pre.lua | |
parent | 7477bb97a8046f35b982c114c797e00135c53f50 (diff) | |
download | context-a9441c9324d34a75086102dcb376f49b181d18db.tar.gz |
beta 2013.04.09 16:22
Diffstat (limited to 'tex/context/base/data-pre.lua')
-rw-r--r-- | tex/context/base/data-pre.lua | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tex/context/base/data-pre.lua b/tex/context/base/data-pre.lua index e48a5aa8c..f2f5bddc4 100644 --- a/tex/context/base/data-pre.lua +++ b/tex/context/base/data-pre.lua @@ -21,7 +21,7 @@ resolvers.prefixes = prefixes local cleanpath, findgivenfile, expansion = resolvers.cleanpath, resolvers.findgivenfile, resolvers.expansion local getenv = resolvers.getenv -- we can probably also use resolvers.expansion -local P, S, R, C, Cs, lpegmatch = lpeg.P, lpeg.S, lpeg.R, lpeg.C, lpeg.Cs, lpeg.match +local P, S, R, C, Cs, Cc, lpegmatch = lpeg.P, lpeg.S, lpeg.R, lpeg.C, lpeg.Cs, lpeg.Cc, lpeg.match local joinpath, basename, dirname = file.join, file.basename, file.dirname local getmetatable, rawset, type = getmetatable, rawset, type @@ -165,6 +165,12 @@ end local pattern = Cs((C(R("az")^2) * P(":") * C((1-S(" \"\';,"))^1) / _resolve_ + P(1))^0) +local prefix = C(R("az")^2) * P(":") +local target = C((1-S(" \"\';,"))^1) +local notarget = (#S(";,") + P(-1)) * Cc("") + +local pattern = Cs(((prefix * (target + notarget)) / _resolve_ + P(1))^0) + local function resolve(str) -- use schemes, this one is then for the commandline only if type(str) == "table" then local t = { } |