diff options
Diffstat (limited to 'tex/context/base/m-translate.tex')
-rw-r--r-- | tex/context/base/m-translate.tex | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/tex/context/base/m-translate.tex b/tex/context/base/m-translate.tex index 9c550eca7..25e3c8618 100644 --- a/tex/context/base/m-translate.tex +++ b/tex/context/base/m-translate.tex @@ -18,7 +18,9 @@ %D better to fix your source. \startluacode - translators = { } + local translators = { } + + moduledata.translators = translators local compiled, list = nil, nil @@ -43,27 +45,35 @@ end end - function translators.reset(s) - resolvers.install_text_filter("user",nil) - list, compiled = nil, nil + local textlineactions = resolvers.openers.helpers.textlineactions + + utilities.sequencers.appendaction(textlineactions,"after","moduledata.translators.translate") + + function translators.enable() + utilities.sequencers.enableaction(textlineactions,"moduledata.translators.translate") end - function translators.enable(s) - resolvers.install_text_filter("user",translators.translate) + + function translators.disable() + utilities.sequencers.disableaction(textlineactions,"moduledata.translators.translate") end - function translators.disable(s) - resolvers.install_text_filter("user",nil) + + function translators.reset(s) + translators.enable() + list, compiled = nil, nil end + + translators.disable() \stopluacode \unprotect \def\translateinput{\dodoubleargument\dotranslateinput} -\def\dotranslateinput[#1][#2]{\ctxlua{translators.register(\!!bs#1\!!es,\!!bs#2\!!es)}} +\def\dotranslateinput[#1][#2]{\ctxlua{moduledata.translators.register(\!!bs#1\!!es,\!!bs#2\!!es)}} -\def\resetinputtranslation {\ctxlua{translators.reset()}} -\def\enableinputtranslation {\ctxlua{translators.enable()}} -\def\disableinputtranslation{\ctxlua{translators.disable()}} +\def\resetinputtranslation {\ctxlua{moduledata.translators.reset()}} +\def\enableinputtranslation {\ctxlua{moduledata.translators.enable()}} +\def\disableinputtranslation{\ctxlua{moduledata.translators.disable()}} \def\readtranslatedfile#1% {\enableinputtranslation |