diff options
author | Karl Berry <karl@freefriends.org> | 2018-04-01 22:26:39 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-04-01 22:26:39 +0000 |
commit | 7d7e6b60a7a00f27ba7119097bc7484ef28fb826 (patch) | |
tree | 55966fc9c0731be9f801f410a655f575594fe2da /Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua | |
parent | ac8d62d1767ddaee38fb7d8d0afc5ae70233f806 (diff) |
arabluatex (2apr18)
git-svn-id: svn://tug.org/texlive/trunk@47226 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua')
-rw-r--r-- | Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua index 2b1360c4454..7a7460aeef2 100644 --- a/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua +++ b/Master/texmf-dist/tex/lualatex/arabluatex/arabluatex.lua @@ -124,6 +124,12 @@ local function breakcmd(str) body = string.sub(body, 2, -2) return string.format("}\\aemph{\\%s{%s}}\\arb{", tag, body) end) + -- Arbmark + str = string.gsub(str, "\\(arbmark.-)(%b{})", + function(tag, body) + body = string.sub(body, 2, -2) + return string.format("}\\%s{%s}\\arb{", tag, body) + end) return str end @@ -665,6 +671,37 @@ function processtrans(str, mode, rules, scheme) return str end +function newarbmark(abbr, rtlmk, ltrmk) + table.insert(arbmarks, {a = abbr, b = rtlmk, c = ltrmk}) + return true +end + +local function isintable(table, element) + for i = 1,#table do + if table[i].a == element then + return true + end + end + return false +end + +function processarbmarks(str) + if not isintable(arbmarks, str) then + str = "\\LR{<??>}" + else + if tex.textdir == "TLT" then + for i = 1,#arbmarks do + str = string.gsub(str, arbmarks[i].a, arbmarks[i].c) + end + else + for i = 1,#arbmarks do + str = string.gsub(str, arbmarks[i].a, arbmarks[i].b) + end + end + end + return str +end + function uc(str) str = string.gsub(str, "(\\txtrans.?)(%b{})", function(tag, body) body = string.sub(body, 2, -2) |