diff options
Diffstat (limited to 'arabluatex.lua')
-rw-r--r-- | arabluatex.lua | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/arabluatex.lua b/arabluatex.lua index a395929..94332e0 100644 --- a/arabluatex.lua +++ b/arabluatex.lua | |||
@@ -93,17 +93,6 @@ local bcbracesii = lpeg.Cs(bcbraces^-2) | |||
93 | local cmdargs = lpeg.Cs(spce * bsqbracketsii * bcbracesii) | 93 | local cmdargs = lpeg.Cs(spce * bsqbracketsii * bcbracesii) |
94 | 94 | ||
95 | local function breakcmd(str) | 95 | local function breakcmd(str) |
96 | for i = 1,#albrkcmds do | ||
97 | str = gsub(str, dblbkslash * lpeg.Cs(albrkcmds[i]) * cmdargs, "}%1%2%3\\arb{") | ||
98 | end | ||
99 | -- user commands | ||
100 | if next(brkcmds) == nil then | ||
101 | -- nothing to do | ||
102 | else | ||
103 | for i = 1,#brkcmds do | ||
104 | str = gsub(str, dblbkslash * lpeg.Cs(brkcmds[i]) * cmdargs, "}%1%2%3\\arb{") | ||
105 | end | ||
106 | end | ||
107 | -- process \item[], then \item[] | 96 | -- process \item[], then \item[] |
108 | str = string.gsub(str, "\\(item.?)(%b[])", | 97 | str = string.gsub(str, "\\(item.?)(%b[])", |
109 | function(tag, body) | 98 | function(tag, body) |
@@ -123,7 +112,19 @@ local function breakcmd(str) | |||
123 | function(tag, body) | 112 | function(tag, body) |
124 | body = string.sub(body, 2, -2) | 113 | body = string.sub(body, 2, -2) |
125 | return string.format("}\\aemph{\\%s{%s}}\\arb{", tag, body) | 114 | return string.format("}\\aemph{\\%s{%s}}\\arb{", tag, body) |
126 | end) | 115 | end) |
116 | -- commands set by default in albrkcmds | ||
117 | for i = 1,#albrkcmds do | ||
118 | str = gsub(str, dblbkslash * lpeg.Cs(albrkcmds[i]) * cmdargs, "}%1%2%3\\arb{") | ||
119 | end | ||
120 | -- user commands | ||
121 | if next(brkcmds) == nil then | ||
122 | -- nothing to do | ||
123 | else | ||
124 | for i = 1,#brkcmds do | ||
125 | str = gsub(str, dblbkslash * lpeg.Cs(brkcmds[i]) * cmdargs, "}%1%2%3\\arb{") | ||
126 | end | ||
127 | end | ||
127 | return str | 128 | return str |
128 | end | 129 | end |
129 | 130 | ||