aboutsummaryrefslogtreecommitdiff
path: root/arabluatex.lua
diff options
context:
space:
mode:
Diffstat (limited to 'arabluatex.lua')
-rw-r--r--arabluatex.lua35
1 files changed, 26 insertions, 9 deletions
diff --git a/arabluatex.lua b/arabluatex.lua
index 13db492..9b46d01 100644
--- a/arabluatex.lua
+++ b/arabluatex.lua
@@ -672,7 +672,20 @@ function al_openstream()
672end 672end
673 673
674local function processarbtoutf(str) 674local function processarbtoutf(str)
675 str = "\\begin{arabexport}"..str 675 if export_utf ~= "arabverse" then
676 str = "\\begin{arabexport}"..str
677 else end
678 str = string.gsub(str, "(\\bayt)%s?(%b{})(%b[])(%b{})", function(tag, argi, argii, argiii)
679 argi = string.sub(argi, 2, -2)
680 argii = string.sub(argii, 2, -2)
681 argiii = string.sub(argiii, 2, -2)
682 return string.format("%s*{\\arb{%s}}[\\arb{%s}]{\\arb{%s}}", tag, argi, argii, argiii)
683 end)
684 str = string.gsub(str, "(\\bayt)%s?(%b{})(%b{})", function(tag, argi, argii)
685 argi = string.sub(argi, 2, -2)
686 argii = string.sub(argii, 2, -2)
687 return string.format("%s*{\\arb{%s}}{\\arb{%s}}", tag, argi, argii)
688 end)
676 str = string.gsub(str, "(\\prname)%s?(%b{})", function(tag, body) 689 str = string.gsub(str, "(\\prname)%s?(%b{})", function(tag, body)
677 body = string.sub(body, 2, -2) 690 body = string.sub(body, 2, -2)
678 if string.find(body, "\\uc%s?%b{}") then 691 if string.find(body, "\\uc%s?%b{}") then
@@ -727,7 +740,9 @@ local function processarbtoutf(str)
727 body = string.gsub(body, "(\\@al@cb)(%s?)", "}%2") 740 body = string.gsub(body, "(\\@al@cb)(%s?)", "}%2")
728 return string.format("{%s}", body) 741 return string.format("{%s}", body)
729 end) 742 end)
730 str = str.."\\end{arabexport}" 743 if export_utf ~= "arabverse" then
744 str = str.."\\end{arabexport}"
745 else end
731 return str 746 return str
732end 747end
733 748
@@ -785,7 +800,9 @@ function al_closestream()
785 t = string.gsub(t, "(\\end%s?)(%b{})", "%1%2\n") 800 t = string.gsub(t, "(\\end%s?)(%b{})", "%1%2\n")
786 t = string.gsub(t, "([^\n]%s-)(\\end)%s?(%b{})", "%1\n%2%3") 801 t = string.gsub(t, "([^\n]%s-)(\\end)%s?(%b{})", "%1\n%2%3")
787 t = string.gsub(t, "\n\n\n", "\n\n") 802 t = string.gsub(t, "\n\n\n", "\n\n")
788 if string.find(t, "\\begin%s?{document}.-\\arb%s?[%[%{]") then 803 if string.find(t, "\\begin%s?{document}.-\\arb%s?[%[%{]") or
804 string.find(t, "\\begin%s?{document}.-\\[Uu]c%s?%b{}")
805 then
789 tex.print([[\unexpanded{\PackageWarningNoLine{arabluatex}{There are still 'arabtex' strings to be converted. Open ]]..tex.jobname..utffilesuffix..".tex"..[[ and compile it one more time}}]]) 806 tex.print([[\unexpanded{\PackageWarningNoLine{arabluatex}{There are still 'arabtex' strings to be converted. Open ]]..tex.jobname..utffilesuffix..".tex"..[[ and compile it one more time}}]])
790 else end 807 else end
791 t = t.."\n\\end{document}" 808 t = t.."\n\\end{document}"
@@ -820,7 +837,7 @@ function processvoc(str, rules, scheme)
820 elseif export_utf == "arabverse" then 837 elseif export_utf == "arabverse" then
821 tofile = str 838 tofile = str
822 tooutfile(tofile) 839 tooutfile(tofile)
823 return str 840-- return str
824 else 841 else
825 return str 842 return str
826 end 843 end
@@ -851,7 +868,7 @@ function processfullvoc(str, rules, scheme)
851 elseif export_utf == "arabverse" then 868 elseif export_utf == "arabverse" then
852 tofile = str 869 tofile = str
853 tooutfile(tofile) 870 tooutfile(tofile)
854 return str 871-- return str
855 else 872 else
856 return str 873 return str
857 end 874 end
@@ -880,7 +897,7 @@ function processnovoc(str, rules, scheme)
880 elseif export_utf == "arabverse" then 897 elseif export_utf == "arabverse" then
881 tofile = str 898 tofile = str
882 tooutfile(tofile) 899 tooutfile(tofile)
883 return str 900-- return str
884 else 901 else
885 return str 902 return str
886 end 903 end
@@ -912,7 +929,7 @@ function processtrans(str, mode, rules, scheme)
912 elseif export_utf == "arabverse" then 929 elseif export_utf == "arabverse" then
913 tofile = str 930 tofile = str
914 tooutfile(tofile) 931 tooutfile(tofile)
915 return str 932-- return str
916 else 933 else
917 return str 934 return str
918 end 935 end
@@ -956,7 +973,7 @@ function processarbmarks(str)
956 elseif export_utf == "arabverse" then 973 elseif export_utf == "arabverse" then
957 tofile = str 974 tofile = str
958 tooutfile(tofile) 975 tooutfile(tofile)
959 return str 976-- return str
960 else 977 else
961 return str 978 return str
962 end 979 end
@@ -1022,7 +1039,7 @@ function uc(str)
1022 elseif export_utf == "arabverse" then 1039 elseif export_utf == "arabverse" then
1023 tofile = "\\txtrans{"..str.."}" 1040 tofile = "\\txtrans{"..str.."}"
1024 tooutfile(tofile) 1041 tooutfile(tofile)
1025 return "\\txtrans{"..str.."}" 1042-- return "\\txtrans{"..str.."}"
1026 else 1043 else
1027 return "\\txtrans{"..str.."}" 1044 return "\\txtrans{"..str.."}"
1028 end 1045 end