summaryrefslogtreecommitdiff
path: root/tex/context/base/lxml-tab.lua
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2009-12-29 22:32:00 +0100
committerHans Hagen <pragma@wxs.nl>2009-12-29 22:32:00 +0100
commit5eb872dbc6bbc35e222d5b23fc783fb0e75d4a99 (patch)
tree91164a948df7bcf12b5423db3ef1b310ca2b5017 /tex/context/base/lxml-tab.lua
parent326b0613f1ed21f5711a8d94403512171c058e48 (diff)
downloadcontext-5eb872dbc6bbc35e222d5b23fc783fb0e75d4a99.tar.gz
beta 2009.12.29 22:32
Diffstat (limited to 'tex/context/base/lxml-tab.lua')
-rw-r--r--tex/context/base/lxml-tab.lua15
1 files changed, 8 insertions, 7 deletions
diff --git a/tex/context/base/lxml-tab.lua b/tex/context/base/lxml-tab.lua
index f38e5ad89..f4ab351e8 100644
--- a/tex/context/base/lxml-tab.lua
+++ b/tex/context/base/lxml-tab.lua
@@ -30,8 +30,9 @@ xml = xml or { }
local concat, remove, insert = table.concat, table.remove, table.insert
local type, next, setmetatable, getmetatable, tonumber = type, next, setmetatable, getmetatable, tonumber
-local format, lower, find = string.format, string.lower, string.find
+local format, lower, find, match = string.format, string.lower, string.find, string.match
local utfchar = unicode.utf8.char
+local lpegmatch = lpeg.match
--[[ldx--
<p>First a hack to enable namespace resolving. A namespace is characterized by
@@ -71,7 +72,7 @@ xml.checkns("m","http://www.w3.org/mathml")
--ldx]]--
function xml.checkns(namespace,url)
- local ns = parse:match(lower(url))
+ local ns = lpegmatch(parse,lower(url))
if ns and namespace ~= ns then
xml.xmlns[namespace] = ns
end
@@ -89,7 +90,7 @@ This returns <t>mml</t>.
--ldx]]--
function xml.resolvens(url)
- return parse:match(lower(url)) or ""
+ return lpegmatch(parse,lower(url)) or ""
end
--[[ldx--
@@ -356,7 +357,7 @@ local function handle_any_entity(str)
if trace_entities then
logs.report("xml","resolved entity &%s; -> %s (internal)",str,a)
end
- a = parsedentity:match(a) or a
+ a = lpegmatch(parsedentity,a) or a
else
if xml.unknown_any_entity_format then
a = xml.unknown_any_entity_format(str) or ""
@@ -535,13 +536,13 @@ local function xmlconvert(data, settings)
if not data or data == "" then
errorstr = "empty xml file"
elseif utfize or resolve then
- if grammar_parsed_text:match(data) then
+ if lpegmatch(grammar_parsed_text,data) then
errorstr = ""
else
errorstr = "invalid xml file - parsed text"
end
else
- if grammar_unparsed_text:match(data) then
+ if lpegmatch(grammar_unparsed_text,data) then
errorstr = ""
else
errorstr = "invalid xml file - unparsed text"
@@ -592,7 +593,7 @@ function xml.is_valid(root)
end
function xml.package(tag,attributes,data)
- local ns, tg = tag:match("^(.-):?([^:]+)$")
+ local ns, tg = match(tag,"^(.-):?([^:]+)$")
local t = { ns = ns, tg = tg, dt = data or "", at = attributes or {} }
setmetatable(t, mt)
return t