% -------------------------------------------------------------------------- % % the CHEMMACROS package -- module: `lang' % % -------------------------------------------------------------------------- % Clemens Niederberger % -------------------------------------------------------------------------- % https://github.org/cgnieder/chemmacros/ % contact@mychemistry.eu % -------------------------------------------------------------------------- % If you have any ideas, questions, suggestions or bugs to report, please % feel free to contact me. % -------------------------------------------------------------------------- % Copyright 2011-2015 Clemens Niederberger % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX % version 2005/12/01 or later. % % This work has the LPPL maintenance status `maintained'. % % The Current Maintainer of this work is Clemens Niederberger. % -------------------------------------------------------------------------- \ChemModule{lang}{2015/07/21 language settings for chemmacros} \RequirePackage{translations} \msg_new:nnn {chemmacros} {language-not-defined} { You~ chose~ the~ language~ `#1'~ which~ is~ not~ defined~ by~ chemmacros.~ `english'~ is~ used~ instead.~ If~ you~ just~ mistyped~ try~ again!~ Otherwise~ contact~ the~ author~ and~ he'll~ probably~ add~ your~ language. } % -------------------------------------------------------------------------- % language settings: \bool_new:N \l__chemmacros_language_auto_bool \bool_set_true:N \l__chemmacros_language_auto_bool % this token list will hold the chosen language for chemmacros; since the % language is either chosen automatically or by option it is only available at % begin document \tl_new:N \l_chemmacros_language_tl \tl_set:Nn \l_chemmacros_language_tl { english } \tl_new:N \l__chemmacros_current_language_tl % translate the key #1 \cs_new:Npn \chemmacros_translate:n #1 { \bool_if:NTF \l__chemmacros_language_auto_bool { \GetTranslation{#1} } { \GetTranslationFor{\l_chemmacros_language_tl}{#1} } } \DeclareExpandableDocumentCommand \ChemTranslate {m} { \chemmacros_translate:n {#1} } \AtBeginDocument{ \bool_if:NTF \l__chemmacros_language_auto_bool { \tl_set:Nx \l_chemmacros_language_tl { \@trnslt@language{\@trnslt@current@language} } } { \tl_set_eq:NN \l_chemmacros_language_tl \l__chemmacros_current_language_tl } } \keys_define:nn {chemmacros} { language .value_required:n = true , language .code:n = \tl_if_eq:nnTF { #1 } { auto } { \bool_set_true:N \l__chemmacros_language_auto_bool } { \bool_set_false:N \l__chemmacros_language_auto_bool \tl_set:Nn \l__chemmacros_current_language_tl { #1 } } , % do we still need these? german .meta:n = { language = german } , german .meta:n = { language = ngerman } , language .initial:n = auto } % -------------------------------------------------------------------------- \DeclareTranslationFallback {scheme-name} {Scheme} \DeclareTranslation {German} {scheme-name} {Schema} \DeclareTranslationFallback {scheme-list} {List~ of~ Schemes} \DeclareTranslation {German} {scheme-list} {Verzeichnis~ der~ Schemata} % -------------------------------------------------------------------------- \DeclareTranslationFallback {K-acid} {\mathrm{a}} \DeclareTranslation{German} {K-acid} {\mathrm{s}} \DeclareTranslation{Dutch} {K-acid} {\mathrm{z}} \DeclareTranslationFallback {K-base} {\mathrm{b}} \DeclareTranslationFallback {K-water} {\mathrm{w}} % -------------------------------------------------------------------------- \DeclareTranslation{German}{phase-sld}{ f } \DeclareTranslation{German}{phase-lqd}{ f\/l } % -------------------------------------------------------------------------- \DeclareTranslationFallback {list-of-reactions} { List~ of~ Reactions } \DeclareTranslation{English} {list-of-reactions} { List~ of~ Reactions } \DeclareTranslation{German} {list-of-reactions} { Reaktionsverzeichnis } \DeclareTranslation{Italian} {list-of-reactions} { Elenco~ delle~ reazioni } \DeclareTranslation{French} {list-of-reactions} { Table~ des~ r\'eactions } \DeclareTranslation{Dutch} {list-of-reactions} { Lijst~ van~ reacties } % \DeclareTranslationFallback {reaction} { Reaction } \DeclareTranslation{English} {reaction} { Reaction } \DeclareTranslation{German} {reaction} { Reaktion } \DeclareTranslation{Italian} {reaction} { Reazione } \DeclareTranslation{French} {reaction} { R\'eaction } \DeclareTranslation{Dutch} {reaction} { Reactie } % --------------------------------------------------------------------------