summaryrefslogtreecommitdiff
path: root/tex/context/third/transliterator/t-transliterator.mkiv
diff options
context:
space:
mode:
authorPhilipp Gesang <phg@phi-gamma.net>2021-11-21 19:22:18 +0100
committerPhilipp Gesang <phg@phi-gamma.net>2021-11-21 19:29:47 +0100
commit814b93d12bc9a0792b150527495ece0847a343fc (patch)
treed7ce166f7f642956e12db8104493075f9d71d4f6 /tex/context/third/transliterator/t-transliterator.mkiv
parent798c814949998d48b06d37b55d7f26d72477bf82 (diff)
downloadtransliterator-814b93d12bc9a0792b150527495ece0847a343fc.tar.gz
reorganize source tree
Diffstat (limited to 'tex/context/third/transliterator/t-transliterator.mkiv')
-rw-r--r--tex/context/third/transliterator/t-transliterator.mkiv188
1 files changed, 0 insertions, 188 deletions
diff --git a/tex/context/third/transliterator/t-transliterator.mkiv b/tex/context/third/transliterator/t-transliterator.mkiv
deleted file mode 100644
index ae08278..0000000
--- a/tex/context/third/transliterator/t-transliterator.mkiv
+++ /dev/null
@@ -1,188 +0,0 @@
-%D \module
-%D [ file=t-transliterator,
-%D version=2021-11-21 18:19:24+0100,
-%D title=\CONTEXT\ User Module,
-%D subtitle=The Transliterator,
-%D author=Philipp Gesang,
-%D date=\currentdate,
-%D copyright=Philipp Gesang,
-%D license=2-clause BSD,
-%D email={pgesang at ix dot urz dot uni-heidelberg dot de}]
-%D This module is licensed under the conditions of the BSD license with
-%D two clauses, there is a copy it in a file named "COPYING" in the
-%D transliterator source tree.
-
-\writestatus{loading}{Transliteration from non-Latin scripts}
-
-\unprotect
-
-\definenamespace [TRL] [
- name=transliterate,
- type=module,
- setup=list,
- parent=TRL,
- style=no,
- version=2021,
- comment=Transliteration from non-Latin scripts.,
-]
-
-\ctxlua{environment.loadluafile ("transliterator")}
-
-%D Use the Transliterator by adding \type{\usemodule[transliterator]} somewhere
-%D before \type{\starttext}. Adjust the Transliterator through the
-%D \type{\setuptransliterate} command. As a first argument it accepts a set of
-%D key-value options; at present you may configure \type{mode} and
-%D \type{hyphenate}.
-
-\def\set_serbian_exceptions{%
- \doifelse{\transliterateparameter{sr_exceptions}}\v!yes
- {\ctxlua{thirddata.translit.sr_except = true}}
- {\ctxlua{thirddata.translit.sr_except = false}}%
-}
-
-\def\set_hinting{%
- \doifelse{\transliterateparameter{hinting}}\v!yes
- {\ctxlua{thirddata.translit.hinting = true}}
- {\ctxlua{thirddata.translit.hinting = false}}%
-}
-
-\appendtoks \set_serbian_exceptions \to \everysetuptransliterate
-\appendtoks \set_hinting \to \everysetuptransliterate
-
-%D At first we'll set some defaults:
-
-\setuptransliterate[%
- debug=\v!false,
- hinting=\v!yes,
- hyphenate=cz,
- mode=ru_old,
- sr_exceptions=\v!yes,
- deficient_font=\v!no,
-]
-
-%D Possible values for \type{mode} are by the time of this writing:
-%D \type{ru}, \type{ru_transcript_de}, \type{ru_transcript_en}, \type{ru_old},
-%D \type{all}, \type{iso9_ocs}, \type{ocs}, \type{ocs_gla}, \type{ru_cz},
-%D \type{ocs_cz}, \type{gr} and \type{gr_n}.
-%D As not all fonts, even the expensive ones, support some of the most frequent
-%D unicode signs used in ISO~9, there are fallbacks for the transliterations of
-%D the weak and hard sign.
-%D They work with the modes \type{iso9_ocs}, \type{all} and
-%D \type{ru_old} only and can be triggered by setting the
-%D variable \type{deficient_font} to the value {\em yes}.
-%D This will transliterate {\em ь} and {\em ъ} (both upper and
-%D lower case) to the more common, but non-ISO characters {\em ’} and {\em ”}
-%D respectively.
-%D Possible values for \type{hyphenate} are all valid \CONTEXT\ language code, for an
-%D overview see \type{http://wiki.contextgarden.net/Language_Codes}.
-%D In praxi you may want to choose either Czech (the default) or Slovak
-%D (\type{sk}) for most transliterations from cyrillic scripts. I've not yet
-%D made up my mind concerning Greek transliteration, any suggestions are
-%D welcome.
-
-%D The following will help debugging and reviewing tables. Make sure your
-%D typescript can handle the characters, in general it's no use with Latin
-%D Modern which unfortunately provides only a restricted set of the unicode
-%D range.
-%D
-%D The user-level command to output a single substitution table is
-%D \type{\showOneTranslitTab{#1}}.
-
-\define[1]\showOneTranslitTab{%
- \startluacode
- environment.loadluafile ("trans_tables_iso9")
- environment.loadluafile ("trans_tables_trsc")
- environment.loadluafile ("trans_tables_scntfc")
- environment.loadluafile ("trans_tables_trsc")
- environment.loadluafile ("trans_tables_glag")
- environment.loadluafile ("trans_tables_gr")
- thirddata.translit.gen_rules_en()
- thirddata.translit.gen_rules_de()
- thirddata.translit.show_tab(translit["\luaescapestring{#1}"])
- \stopluacode
-}
-
-%D The user-level command to output all defined tables is
-%D \type{\showTranslitTabs}.
-
-\define\showTranslitTabs{%
- \ctxlua{thirddata.translit.show_all_tabs()}%
-}
-
-\def\translitDebug#1{%
- \doif{\transliterateparameter{debug}}{yes}{%
- {\ss\inmargin{\ctxlua{thirddata.translit.debug_next()}} #1}%
- }%
-}
-
-
-%D The user-level command \type{\transliterate[#1]{#2}} does the job of
-%D switching to a given language (for hyphenation) and adjusting the
-%D substitution method locally. It takes an optional list \type{[#1]} of
-%D key-value arguments to allow ad-hoc specification of either two that deviate
-%D from the defaults set initially by means of \type{\setuptransliterate}.
-%D
-%D Internally, \type{\dotransliterate} is called according to the \CONTEXT\
-%D coding style and in case the user provides \type{hyphenate=} or
-%D \type{mode=} those will be used instead of the globals. Note that this
-%D leaves the latter unchanged. Thus, in order to permanently switch to
-%D another transliteration style the user would have to set it by calling
-%D \type{\setuptransliterate} again.
-%D
-% All credits for rewriting the TeX code go to Wolfgang as well.
-% http://www.ntg.nl/pipermail/ntg-context/2010/047816.html
-
-\def\dotransliterate[#1]#2{%
- \bgroup\iffirstargument
- \setuptransliterate[#1]%
- \fi
- \language[\transliterateparameter{hyphenate}]%
- \ctxlua{
- thirddata.translit.deficient_font = "\transliterateparameter{deficient_font}"
- thirddata.translit.transliterate("\transliterateparameter{mode}","\luaescapestring{#2}")
- }%
- \egroup%
-}
-
-\unexpanded\def\transliterate{\dosingleempty\dotransliterate}
-
-\def\expandabletransliterate#1{%
- %\bgroup
- %\setuptransliterate[#1]%
- %\language[\transliterateparameter{hyphenate}]%
- \ctxlua{
- thirddata.translit.deficient_font = "\transliterateparameter{deficient_font}"
- thirddata.translit.transliterate("\transliterateparameter{mode}","#1")
- }%
- %\egroup%
-}
-
-\unexpanded\def\starttransliterate{%
- \bgroup%
- \dosingleempty\dostarttransliterate%
-}
-
-\let\stoptransliterate\relax
-
-\def\dostarttransliterate[#1]#2\stoptransliterate{%
- \iffirstargument
- \setuptransliterate[#1]%
- \fi
- \language[\transliterateparameter{hyphenate}]%
- \ctxlua{thirddata.translit.transliterate("\transliterateparameter{mode}","\luaescapestring{#2}")}%
- \egroup%
-}
-
-\newconditional\transliterate_useexpanded \setfalse\transliterate_useexpanded
-
-\def\transliterate_conditional[#1]#2{%
- \ifconditional\transliterate_useexpanded
- \transliterate[#1]{#2}%
- \else
- \expandabletransliterate{#2}%
- \fi%
-}
-
-\protect \endinput
-
-% vim:ft=context