Sorry, reportbug only asked me only for one single file. The four modified files are attached with this mail. On Dilluns 04 Octubre 2004 03:51, David García Garzón wrote: > Package: tetex-base > Version: 2.0.2b-6 > Severity: wishlist > File: tetex > Tags: patch l10n > > I modified some conTeXt files in order to get catalan compatibility. > That is adding the idiom, activating hyphenation, and adding translated > strings for 'List of figures' and so on. > > By adding catalan i also realized that there were some errors on the > spanish translation as well. So i fixed them too. > > The workarraund is to substitute some files on > /usr/share/texmf/tex/context/base/ with the ones attached and then, > running 'fmtutil --all' as root. I don't know how to fix it on the > sources but it should be not so difficult. > > > > -- Package-specific info: > Please read and follow the instructions in the first lines below > the text: "-- Package-specific info:". > Thank you. > > Press ENTER to continue > If you report an error when running one of the TeX-related binaries > (latex, pdftex, metafont,...), or if the bug is related to bad or wrong > output, please include a MINIMAL example input file that produces the > error in your report. Don't forget to also include minimal examples of > other files that are needed, e.g. bibtex databases. Often it also helps > to include the logfile. Please, never send included pictures! > > If your example file isn't short or produces more than one page of > output (except when multiple pages are needed to show the problem), > you can probably minimize it further. Instructions on how to do that > can be found at > > http://www.latex-einfuehrung.de/mini-en.html (english) > > or > > http://www.latex-einfuehrung.de/mini.html (german) > > ################################## > minimal input file > > > ################################## > other files > > ###################################### > List of ls-R files > > -rw-rw-r-- 1 root staff 91 2004-09-27 00:17 /usr/local/lib/texmf/ls-R > -rw-rw-r-- 1 root users 1250 2004-10-04 02:44 /var/lib/texmf/ls-R > lrwxrwxrwx 1 root root 29 2004-09-26 23:51 /usr/share/texmf/ls-R -> > /var/lib/texmf/ls-R-TEXMFMAIN > > -- System Information: > Debian Release: 3.1 > APT prefers unstable > APT policy: (500, 'unstable') > Architecture: i386 (i686) > Kernel: Linux 2.6.8-1-k7 > Locale: LANG=ca_ES@euro, LC_CTYPE=ca_ES@euro > > Versions of packages tetex-base depends on: > ii debconf 1.4.38 Debian configuration > management sy ii dpkg 1.10.23 Package > maintenance system for Deb ii texinfo 4.7-2.2 > Documentation system for on-line i ii ucf 1.09 > Update Configuration File: preserv > > Versions of packages tetex-bin depends on: > ii debconf 1.4.38 Debian configuration > management sy ii debianutils 2.10.2 Miscellaneous > utilities specific t ii dpkg 1.10.23 Package > maintenance system for Deb ii ed 0.2-20 The > classic unix line editor ii libc6 2.3.2.ds1-17 GNU C > Library: Shared libraries an ii libgcc1 1:3.4.2-2 > GCC support library > ii libice6 4.3.0.dfsg.1-8 Inter-Client Exchange library > ii libkpathsea3 2.0.2-22 path search library for teTeX > (run ii libpaper1 1.1.14-0.4 Library for handling > paper charact ii libpng12-0 1.2.5.0-7 PNG library - > runtime ii libsm6 4.3.0.dfsg.1-8 X Window System > Session Management ii libstdc++5 1:3.3.4-12 The GNU > Standard C++ Library v3 ii libt1-5 5.0.2-3 Type 1 > font rasterizer library - r ii libwww-ssl0 [libwww0] 5.4.0-9 > The W3C-WWW library (SSL support) ii libx11-6 > 4.3.0.dfsg.1-8 X Window System protocol client li ii libxaw7 > 4.3.0.dfsg.1-8 X Athena widget set library ii libxext6 > 4.3.0.dfsg.1-8 X Window System miscellaneous exte ii libxmu6 > 4.3.0.dfsg.1-8 X Window System miscellaneous util ii libxt6 > 4.3.0.dfsg.1-8 X Toolkit Intrinsics > ii mime-support 3.28-1 MIME files 'mime.types' & > 'mailcap ii perl 5.8.4-2.3 Larry Wall's > Practical Extraction ii sed 4.1.2-1 The GNU > sed stream editor ii ucf 1.09 Update > Configuration File: preserv ii xlibs 4.3.0.dfsg.1-8 X > Window System client libraries m ii zlib1g 1:1.2.1.2-1 > compression library - runtime > > Versions of packages tetex-extra depends on: > ii dpkg 1.10.23 Package maintenance system for > Deb ii gsfonts 8.14+v8.11-0.1 Fonts for the Ghostscript > interpre ii tetex-bin 2.0.2-22 The teTeX binary > files ii ucf 1.09 Update Configuration > File: preserv > > -- debconf information: > * tetex-base/olddat: true > tetex-base/fmtutil-failed: > * tetex-bin/cnf_name: > * tetex-bin/texmf: true > tetex-bin/updmap-failed: > tetex-base/oldupdm: > tetex-base/updmap-failed: > * tetex-bin/groupperm: true > * tetex-bin/lsr-perms: true > * tetex-bin/upd_map: true > * tetex-bin/fmtutil: true > tetex-bin/fmtutil-failed: > * tetex-bin/userperm: false > * tetex-bin/hyphen: ngerman[=naustrian-neue_Rechtschreibung], > french[=patois], spanish tetex-bin/oldcfg: true > tetex-base/oldcfg: true > * tetex-bin/use_debconf: true > * tetex-bin/groupname: users -- David ("Vokimon") García Garzón (Work) dgarcia at iua dot upf anotherdot es (Home) vokimon at telefonica adot net http://www.salleurl.edu/~is04069 Hay vida mas alla de Microsoft! http://www.linux.org http://www.freebsd.org http://www.openbsd.org http://www.netbsd.org incluso http://www.mac.com
%D \module %D [ file=cont-usr, %D version=1997.10.05, %D title=\CONTEXT\ User Format Specifications, %D subtitle=System Specific Setups, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. %D In this file users can specify what hyphenation patterns %D they want to load into the format file. Normally, when %D using the \type {cont-..} files, this file can best be %D left unchanged. The default language and font settings %D done in the \type {cont-.} files take precedence! This file %D is subject to changes. \unprotect %D Hyphenation patterns are normally sought in filed named %D \type {lang-xx.pat}. When present on the system, those %D patterns take precedence. (The next list is inspired on %D Thomas Esser's \TETEX\ distribution.) This list will be %D adapted to the actual situation. \definefilesynonym [lang-ca.pat] [cahyph.tex] \definefilesynonym [lang-cz.pat] [czhyph.tex] \definefilesynonym [lang-da.pat] [dkhyph.tex] \definefilesynonym [lang-de.pat] [dehyphn.tex] \definefilesynonym [lang-en.pat] [ushyph1.tex] \definefilesynonym [lang-es.pat] [eshyph.tex] \definefilesynonym [lang-fi.pat] [fihyph.tex] \definefilesynonym [lang-fr.pat] [frhyph.tex] \definefilesynonym [lang-hr.pat] [hrhyph.tex] \definefilesynonym [lang-hu.pat] [huhyph.tex] \definefilesynonym [lang-it.pat] [ithyph.tex] \definefilesynonym [lang-la.pat] [lahyph7.tex] \definefilesynonym [lang-nl.pat] [nehyph.tex] \definefilesynonym [lang-no.pat] [nohyph.tex] \definefilesynonym [lang-pl.pat] [plhyph.tex] \definefilesynonym [lang-pt.pat] [pthyph.tex] \definefilesynonym [lang-ro.pat] [rohyph.tex] \definefilesynonym [lang-ru.pat] [ruenhyph.tex] \definefilesynonym [lang-sk.pat] [skhyph.tex] \definefilesynonym [lang-sv.pat] [sehyph.tex] \definefilesynonym [lang-tr.pat] [trhyph.tex] \definefilesynonym [lang-ua.pat] [ukrenhyp.tex] \definefilesynonym [lang-uk.pat] [ukhyphen.tex] \definefilesynonym [lang-us.pat] [ushyph1.tex] %D When the dutch spelling changed, new patterns were %D constructed. For long these were named \type {dutch96.pat}. %D From 2000 however, the old \type {nehyph} files were %D replaced by \type {nehyph96.tex}. Typical something that %D you have to find out by accident. The names of hyphenation %D files as well as their coding is one of the dark areas of %D \TEX\ distributions. \doiffileelse{nehyph96.tex} {\definefilesynonym[lang-nl.pat][nehyph96.tex]} {\doiffileelse{dutch96.pat} {\definefilesynonym[lang-nl.pat][dutch96.pat]} {\definefilesynonym[lang-nl.pat][nehyph.tex]}} %D Pattern files are (can be) encoded! And, alas, not all %D pattern files are self contained, which is why (for the %D moment) we specify encodings here. \installlanguage [\s!cz] [\s!mapping={il2,ec},\s!encoding={il2,ec}] \installlanguage [\s!hr] [\s!mapping={il2,ec},\s!encoding={il2,ec}] %installlanguage [\s!pl] [\s!mapping=pl0,\s!encoding=pl0] \installlanguage [\s!pl] [\s!mapping={pl0,ec},\s!encoding={pl0,ec}] \installlanguage [\s!sk] [\s!mapping={il2,ec},\s!encoding={il2,ec}] %D Sometimes these are not wanted: %\definefilesynonym [lang-deo.pat] [dehypht.tex] % old patterns %\definefilesynonym [lang-nlx.pat] [dutch96.pat] % new patterns %D Additional languages can be defined here. Beware of %D encoding incompatibilities. Please take a look at the %D \type {cont-en.tex}, \type {cont-nl.tex}, enz.\ files %D first. Normally you don't have to change a byte. % \installlanguage [\s!af] [\c!status=\v!start] % afrikaans % \installlanguage [\s!ca] [\c!status=\v!start] % catalan % \installlanguage [\s!cz] [\c!status=\v!start] % czech % \installlanguage [\s!da] [\c!status=\v!start] % danish % \installlanguage [\s!de] [\c!status=\v!start] % german % \installlanguage [\s!en] [\c!status=\v!start] % english us % \installlanguage [\s!es] [\c!status=\v!start] % spanish % \installlanguage [\s!fi] [\c!status=\v!start] % finnish % \installlanguage [\s!fr] [\c!status=\v!start] % french % \installlanguage [\s!hr] [\c!status=\v!start] % croatian % \installlanguage [\s!hu] [\c!status=\v!start] % hungarian % \installlanguage [\s!it] [\c!status=\v!start] % italian % \installlanguage [\s!la] [\c!status=\v!start] % latin % \installlanguage [\s!nl] [\c!status=\v!start] % dutch % \installlanguage [\s!no] [\c!status=\v!start] % norwegian % \installlanguage [\s!pl] [\c!status=\v!start] % polish % \installlanguage [\s!pt] [\c!status=\v!start] % portuguese % \installlanguage [\s!ro] [\c!status=\v!start] % romanian % \installlanguage [\s!ru] [\c!status=\v!start] % russian % \installlanguage [\s!sk] [\c!status=\v!start] % slovak % \installlanguage [\s!sv] [\c!status=\v!start] % swedish % \installlanguage [\s!tr] [\c!status=\v!start] % turkish % \installlanguage [\s!ua] [\c!status=\v!start] % ukrainian % \installlanguage [\s!uk] [\c!status=\v!start] % english uk % \installlanguage [deo] [\c!status=\v!start] % old german % \installlanguage [nlx] [\c!status=\v!start] % dutch 8 bit %D The next lines can be used for setting the language to be %D used at startup time. % \setupcurrentlanguage[\s!af] % \setupcurrentlanguage[\s!cz] % \setupcurrentlanguage[\s!ca] % \setupcurrentlanguage[\s!da] % \setupcurrentlanguage[\s!de] % \setupcurrentlanguage[\s!en] % \setupcurrentlanguage[\s!es] % \setupcurrentlanguage[\s!fi] % \setupcurrentlanguage[\s!fr] % \setupcurrentlanguage[\s!hr] % \setupcurrentlanguage[\s!hu] % \setupcurrentlanguage[\s!it] % \setupcurrentlanguage[\s!la] % \setupcurrentlanguage[\s!nl] % \setupcurrentlanguage[\s!no] % \setupcurrentlanguage[\s!pl] % \setupcurrentlanguage[\s!pt] % \setupcurrentlanguage[\s!ro] % \setupcurrentlanguage[\s!ru] % \setupcurrentlanguage[\s!sk] % \setupcurrentlanguage[\s!sv] % \setupcurrentlanguage[\s!tr] % \setupcurrentlanguage[\s!ua] %D Local font settings can go here. Normally suitable %D defaults are already preloaded, almost certainly the %D Computer Modern Roman typefaces or some derivate. So, the %D next line is only meant as sample, take a look at the %D format related files first. % \definefilesynonym [font-cmr] [font-csr] % czech & slovak % \definefilesynonym [font-cmr] [font-plr] % polish %D In some languages, compound characters, like \type {"e} %D are used to get accented and non latin characters. \useencoding[fde] % german % \useencoding[ffr] % french % \useencoding[fro] % romanian % \useencoding[fpl] % polish %D Don't remove the next few lines. \protect \endinput
%D \module %D [ file=lang-ini, %D version=1996.01.25, %D title=\CONTEXT\ Language Macros, %D subtitle=Initialization, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. %D Todo : --language=pl,en,nl : nl incs number of language %D This module implements the (for the moment still simple) %D multi||language support of \CONTEXT, which should not be %D confused with the multi||lingual interface. This support %D will be extended when needed. \writestatus{loading}{Context Language Macros / Initialization} \unprotect \startmessages dutch library: linguals title: taal 1: afbreekpatronen -- voor -- geladen (n=--) 2: geen afbreekpatronen -- voor -- (n=--) 3: afbreekdefinities -- voor -- geladen (n=--) 4: geen afbreekdefinities -- voor -- (n=--) 5: afbreekpatronen voor -- niet geladen 6: taal -- is niet gedefinieerd 7: taal specifieke opties [--] introduceren een skip van -- 8: taal specifieke opties [--] naadloos toegevoegd 9: taal -- is actief 10: patronen --geladen \stopmessages \startmessages english library: linguals title: language 1: patterns -- for -- loaded (n=--) 2: no patterns -- for -- (n=--) 3: hyphenations -- for -- loaded (n=--) 4: no hyphenations -- for -- (n=--) 5: patterns for -- not loaded 6: language -- is undefined 7: language specific options [--] introduce a -- skip 8: language specific options [--] seamless appended 9: language -- is active 10: patterns --loaded \stopmessages \startmessages german library: linguals title: Sprache 1: Trennmuster -- fuer -- geladen (n=--) 2: Keine Trennmuster -- fuer -- (n=--) 3: Trenndefinitionen -- fuer -- geladen (n=--) 4: Keine Trenndefinitionen -- fuer -- (n=--) 5: Trennmuster fuer -- nicht geladen 6: Sprache -- ist undefiniert 7: Sprachenspezifische Option [--] fuegt eine Luecke von -- ein 8: Sprachenspezifische Option [--] nahtlos hinzugefuegt 9: Sprache -- ist aktiv 10: Trennmuster --geladen \stopmessages % TOM: 9 and 10 \startmessages czech library: linguals title: jazyky 1: vzory -- pro -- nacteny (n=--) 2: zadne vzory -- pro -- (n=--) 3: deleni slov -- pro -- nacteno (n=--) 4: zadne deleni slov -- pro -- (n=--) 5: vzory pro -- nenacteny 6: jazyk -- neni definovan 7: specificke volby jazyka [--] zavadeji -- (zavlecenou) mezeru 8: specificke volby jazyka [--] bez mezer pripojeny 9: language -- is active 10: vzory --nacteny \stopmessages \startmessages italian library: linguals title: lingua 1: schemi -- per -- caricati (n=--) 2: niente schemi -- per -- (n=--) 3: sillabazione -- per -- caricata (n=--) 4: niente sillabazione -- per -- (n=--) 5: schemi per -- non caricati 6: lingua -- non definita 7: opzioni specifiche per la lingua [--] introducono un salto -- 8: opzioni specifiche per la lingua [--] aggiunte trasparentemente 9: lingua -- attiva 10: schemi -- caricati \stopmessages \startmessages norwegian library: linguals title: språk 1: orddelingsmønster -- for -- er lest inn (n=--) 2: ingen orddelingsmønster -- for -- (n=--) 3: orddelingsdefinisjon -- for -- er lest inn (n=--) 4: ingen orddelingsdefinisjon -- for -- (n=--) 5: orddelingsmønster for -- er ikke lest inn 6: språk -- er udefinert 7: språk spesifikk opsjon [--] introduserer et -- hopp 8: språk spesifikk opsjon [--] problemfritt tilføyd 9: språk -- er aktivt 10: orddelingsmønster -- er lest inn \stopmessages \startmessages romanian library: linguals title: limbi 1: sablonul -- pentru -- s-a incarcat (n=--) 2: nu exista sabloane -- pentru -- (n=--) 3: despartirea in silabe -- pentru -- s-a incarcat (n=--) 4: nu exista despartire in silabe -- pentru -- (n=--) 5: sabloanele pentru -- nu sunt incarcate 6: limba -- nu este definita 7: optiunile specifice ale limbii [--] introduc un spatiu -- 8: optiunile specifice ale limbii [--] adaugate 9: limba -- este activa 10: sabloanele -- incarcate \stopmessages %D When loading hyphenation patterns, \TEX\ assign a number to %D each loaded table, starting with~0. Switching to a specific %D table is done by assigning the relevant number to the %D predefined \COUNTER\ \type{\language}. Unfortunately the %D name of this command suits very well the name of the %D language switching command we are to define, so let's save %D this primitive under another name: \let\normallanguage = \language %D We keep track of the last loaded patterns by means of a %D pseudo \COUNTER. This just one of those situations in which %D we don't want to spent a real one. \newcounter\loadedlanguage %D Let's start with setting the lowercase code of quotes, so %D that we get proper hyphenation in languages like Dutch, %D French and Czech. \lccode`\'=`\' %D \macros %D {currentlanguage, setupcurrentlanguage} %D %D Instead of numbers,we are going to use symbolic names for %D the languages. The current langage is saved in the macro %D \type {\currentlanguage}. The setup macro is mainly used %D for cosmetic purposes. \let\currentlanguage \empty \let\currentmainlanguage\empty \def\setupcurrentlanguage[#1]{\def\currentlanguage{#1}} %D The internal macros will be defined later. %D \macros %D {installlanguage} %D %D Hyphenation patterns can only be loaded when the format file %D is prepared. The next macro takes care of this loading. A %D language is specified with %D %D \showsetup{\y!installlanguage} %D %D When \type{\c!status} equals \type{\v!start}, both patterns %D and additional hyphenation specifications are loaded. These %D files are seached for on the system path and are to be %D named: %D %D \starttypen %D \f!languageprefix-identifier.\f!patternsextension %D \f!languageprefix-identifier.\f!hyhensextension %D \stoptypen %D %D The \type{\c!spatiering} specifies how the spaces after %D punctuation has to be handled. English is by tradition more %D tolerant to inter||sentence spacing than other languages. %D %D This macro also defines \type{\identifier} as a shortcut %D switch to the language. Furthermore the command defined as %D being language specific, are executed. With %D \type{\c!default} we can default to another language %D (patterns) at format generation time. This default language %D is overruled when the appropriate patterns are loaded (some %D implementations support run time addition of patterns to a %D preloaded format). \def\dodoinstalllanguage#1#2% #2 added {\doifundefined{#1}{\setvalue{#1}{\complexlanguage[#2]}}% \expanded{\noexpand\uppercase{\noexpand\edef\noexpand\ascii{#1}}}% \doifundefined\ascii{\setvalue{\ascii}{\complexlanguage[#2]}}} %D \macros %D {preloadlanguages} %D %D We first try to load the files defined as file synonym %D for \type {lang-*.pat} and \type {lang-*.hyp}. After that we %D fall back on those files. The macro \type {\preloadpatterns} %D reports which patterns are loaded and what hyphenmin %D values are set. \let\preloadedpatterns\empty \def\showpatterns#1% {\getvalue{\??la#1\s!lefthyphenmin}% -#1-% \getvalue{\??la#1\s!righthyphenmin} } \def\preloadlanguages {\doifsomething\preloadedpatterns {\showmessage\m!linguals{10}\preloadedpatterns}} \let\installedlanguages\empty \def\doinstalllanguage[#1][#2]% {%\ConvertConstantAfter\doifinstringelse{=}{#2} \doifassignmentelse{#2} {\doifdefinedelse{\??la#1\c!status} {\getparameters[\??la#1][#2]} {\setvalue{\l!prefix!#1}{#1}% \addtocommalist{#1}\installedlanguages \dodoinstalllanguage{#1}{#1}% \getparameters [\??la#1] [\s!lefthyphenmin=2, \s!righthyphenmin=2, \c!spatiering=\v!opelkaar, \c!leftsentence=---, \c!rightsentence=---, \c!leftsubsentence=---, \c!rightsubsentence=---, \c!leftquote=\upperleftsinglesixquote, \c!rightquote=\upperrightsingleninequote, \c!leftquotation=\upperleftdoublesixquote, \c!rightquotation=\upperrightdoubleninequote, \c!leftspeech=\getvalue{\??la#1\c!leftquotation}, \c!middlespeech=, \c!rightspeech=\getvalue{\??la#1\c!rightquotation}, \c!limittext=\unknown, \c!datum={\v!jaar,\ ,\v!maand,\ ,\v!dag}, \c!status=\v!stop, \c!default=, \s!patterns=, \s!mapping=, \s!encoding=, \c!tekst=Ag, #2]% \doifvaluesomething{\??la#1\c!default} {\doifnotvalue{\??la#1\c!default}{#1} {\getparameters [\??la#1] [\s!lefthyphenmin=\languagedefault{#1}\s!lefthyphenmin, \s!righthyphenmin=\languagedefault{#1}\s!righthyphenmin, \c!spatiering=\languagedefault{#1}\c!spatiering, \c!leftsentence=\languagedefault{#1}\c!leftsentence, \c!rightsentence=\languagedefault{#1}\c!rightsentence, \c!leftsubsentence=\languagedefault{#1}\c!leftsubsentence, \c!rightsubsentence=\languagedefault{#1}\c!rightsubsentence, \c!leftquote=\languagedefault{#1}\c!leftquote, \c!rightquote=\languagedefault{#1}\c!rightquote, \c!leftquotation=\languagedefault{#1}\c!leftquotation, \c!rightquotation=\languagedefault{#1}\c!rightquotation, \c!leftspeech=\languagedefault{#1}\c!leftspeech, \c!middlespeech=\languagedefault{#1}\c!middlespeech, \c!rightspeech=\languagedefault{#1}\c!rightspeech, \c!datum=\languagedefault{#1}\c!datum, \s!mapping=\languagedefault{#1}\s!mapping, \s!encoding=\languagedefault{#1}\s!encoding, \c!tekst=\languagedefault{#1}\c!tekst, #2]}}}% \doifvalue{\??la#1\c!default}{#1}{\letvalue{\??la#1\c!default}\empty}% % loop in deo % \doifvalue{\??la#1\s!patterns}{#1}{\letvalue{\??la#1\c!default}\empty}% % \doifelsevalue{\??la#1\c!status}\v!start {\doifelsevaluenothing{\??la#1\s!patterns} {\edef\languagesuffix{#1}} {\edef\languagesuffix{\getvalue{\??la#1\s!patterns}}}% \doifundefinedelse{\??la\??la:\currentencoding:\currentmapping:\languagesuffix} {\doloadpatterns{#1}{\languagesuffix}} {\bgroup \edef\loadedlanguage{\getvalue{\??la\??la:\currentencoding:\currentmapping:\languagesuffix}}% \showmessage\m!linguals1{\languagesuffix,#1,\loadedlanguage}% \showmessage\m!linguals3{\languagesuffix,#1,\loadedlanguage}% \egroup}} {\showmessage\m!linguals5{#1}}} {\setvalue{\l!prefix!#1}{#2}% \dodoinstalllanguage{#1}{#2}}} % ^^ \language[#1] gave unwanted side effect of loading language specifics \def\installlanguage {\dodoubleargument\doinstalllanguage} %D Handy \def\preloadallpatterns {\gdef\preloadallpatterns##1% {\installlanguage[##1][\c!status=\v!start]}% \processcommacommand[\installedlanguages]\preloadallpatterns \global\let\preloadallpatterns\relax} %D When the second argument is a language identifier, a %D synonym is created. This feature is present because we %D used dutch mnemonics in the dutch version, but nowadays %D conform a standard. \let \patternencoding \s!default \let \patternmapping \s!default \def\doloadpatterns#1#2% {\expanded{\getcommacommandsize[\getvalue{\??la#2\s!encoding}]}% \ifnum\commalistsize>0 %\message{[nofpatterns #2: \commalistsize/\getvalue{\??la#2\s!encoding}]}% \dorecurse\commalistsize {\expanded{\getfromcommacommand[\getvalue{\??la#2\s!encoding}][\recurselevel]}% \let\patternencoding\commalistelement \expanded{\getfromcommacommand[\getvalue{\??la#2\s!mapping }][\recurselevel]}% \let\patternmapping \commalistelement %\message{[patterns: #1/#2/\patternencoding/\patternmapping]}% \dodoloadpatterns{#1}{#2}\patternencoding\patternmapping}% \else %\message{[patterns: #1/#2]}% \dodoloadpatterns{#1}{#2}{}{}% \fi} \let\normalpatterns\patterns \def\dodoloadpatterns#1#2#3#4% beware, loaded language also incr {\normallanguage\loadedlanguage % when not really needed %\letvalue{\??la\??la#2}\loadedlanguage \bgroup \scratchtoks\everyjob % we don't want additional junk put there \let\showpatterns\relax \startencoding[#3]% \enablemapping[#4]% \doifnothing\currentencoding{\let\currentencoding\s!default}% \doifnothing\currentmapping {\let\currentmapping \s!default}% \letgvalue{\??la\??la:\currentencoding:\currentmapping:#2}\loadedlanguage \startreadingfile \startpatternaccents %\def\patterns##1{\message{#1/#2/#3/#4/##1}\normalpatterns{##1}}% \readsysfile{\truefilename{\f!languageprefix#2.\f!patternsextension}} {\setxvalue{\??la#1\s!patterns}{#2}% \xdef\preloadedpatterns {\preloadedpatterns \number\normallanguage:\showpatterns{#2}}% \showmessage\m!linguals1{#2,#1,\loadedlanguage}} {\readsysfile{\f!languageprefix#2.\f!patternsextension} {\setxvalue{\??la#1\s!patterns}{#2}% \xdef\preloadedpatterns{\preloadedpatterns\showpatterns{#2}}% \showmessage\m!linguals1{#2,#1,\loadedlanguage}} {\showmessage\m!linguals2{#2,#1,\loadedlanguage}}}% \readsysfile{\truefilename{\f!languageprefix#2.\f!hyphensextension}} {\showmessage\m!linguals3{#2,#1,\loadedlanguage}} {\readsysfile{\f!languageprefix#2.\f!hyphensextension} {\showmessage\m!linguals3{#2,#1,\loadedlanguage}} {\showmessage\m!linguals4{#2,#1,\loadedlanguage}}}% \stoppatternaccents \stopreadingfile \stopencoding \global\everyjob\scratchtoks \egroup \increment\loadedlanguage} %D \macros %D {setuplanguage} %D %D Quick and dirty, but useful: %D %D \showsetup{\y!setuplanguage} \def\setuplanguage {\dodoubleargument\dosetuplanguage} \def\dosetuplanguage[#1][#2]% {\getparameters[\??la#1][#2]% \doif{#1}\currentlanguage\docomplexlanguage} %D The values \type {\c!leftsentence} and \type %D {\c!rightsentence} can be (and are) used to implement %D automatic subsentence boundary glyphs, like in {\fr %D |<|french guillemots|>|} or {\de |<|german guillemots|>|} or %D {\nl |<|dutch dashes|>|} like situations. Furthermore \type %D {\c!leftquotation} and \type {\c!leftquote} come into view %D \citaat {when we quote} or \citeer {quote} something. %D \macros %D {currentdatespecification} %D %D Just to make things easy we can ask for the current date %D specification by saying: \def\currentdatespecification {\csname\??la\currentlanguage\c!datum\endcsname} %D This command is not meant for users. %D Carefull reading of these macros shows that it's legal to %D say %D %D \starttypen %D \installlanguage [du] [de] %D \stoptypen %D \macros %D {language,mainlanguage} %D %D Switching to another language (actually another hyphenation %D pattern) is done with: %D %D \starttypen %D \language[identifier] %D \stoptypen %D %D or with \type{\identifier}. Just to be compatible with %D \PLAIN\ \TEX, we still support the original meaning, so %D %D \starttypen %D \language=1 %D \stoptypen %D %D is a valid operation, where the relation between number %D and language depends on the order in installing languages. %D %D \showsetup{\y!language} %D \showsetup{\y!mainlanguage} %D %D Both commands take a predefined language identifier as %D argument. We can use \type{\mainlanguage[identifier]} for %D setting the (indeed) main language. This is the language %D used for translating labels like {\em figure} and {\em %D table}. The main language defaults to the current language. %D %D We take care of local as well as standardized language %D switching (fr and fa, de and du, but nl and nl). % new, encoding specific patterns \ifx\synchronizepatterns\undefined \let\synchronizepatterns\relax \fi \beginTEX \def\dosetnormallanguage#1#2% {\@EA\ifx\csname\??la\??la#1#2\endcsname\relax \@EA\firstofoneargument \else\@EA\ifx\csname\??la\??la#1#2\endcsname\empty \@EAEAEA\firstofoneargument \else \donetrue \global\@EA\xdef\csname\??la\currentlanguage\s!patterns\endcsname{#2}% \normallanguage\csname\??la\??la#1#2\endcsname\relax % \relax is needed for lookahead problems \@EAEAEA\gobbleoneargument \fi\fi} \endTEX \beginETEX \def\dosetnormallanguage#1#2% {\ifcsname\??la\??la#1#2\endcsname \edef\thenormallanguage{\csname\??la\??la#1#2\endcsname}% \ifx\thenormallanguage\empty \@EAEAEA\firstofoneargument \else \donetrue \global\@EA\xdef\csname\??la\currentlanguage\s!patterns\endcsname{#2}% \normallanguage\thenormallanguage\relax % \relax is needed for lookahead problems \@EAEAEA\gobbleoneargument \fi \else \@EA\firstofoneargument \fi} \endETEX \newevery \everylanguage \relax \newevery \everyresetlanguagespecifics \relax \def\setnormallanguage#1% {\dosetnormallanguage{:\currentencoding:\currentmapping:}{#1}{% \dosetnormallanguage{:\currentencoding:\s!default :}{#1}{% \dosetnormallanguage{:\s!default :\currentmapping:}{#1}{% \dosetnormallanguage{:\s!default :\s!default :}{#1}{}}}}} \def\docomplexlanguage% assumes that \currentlanguage is set {\edef\currentdefaultlanguage{\defaultlanguage\currentlanguage}% \def\synchronizepatterns{\setnormallanguage {\csname\??la\currentlanguage\s!patterns\endcsname}}% called often \donefalse \synchronizepatterns \ifdone\else \def\synchronizepatterns{\setnormallanguage\currentlanguage}% \synchronizepatterns \ifdone\else \ifx\currentdefaultlanguage\empty\else \def\synchronizepatterns{\setnormallanguage {\csname\??la\currentdefaultlanguage\s!patterns\endcsname}}% \synchronizepatterns \ifdone\else \setnormallanguage\currentdefaultlanguage \synchronizepatterns \fi \fi \fi \fi \the\everylanguage \enablelanguagespecifics[\currentlanguage]% % strange, what is this doing here, dangerous for {il2,ec} % \edef\languagemapping{\csname\??la\currentlanguage\s!mapping\endcsname}% % \ifx\languagemapping\empty\else % \fastenablemapping\languagemapping % \fi \lefthyphenmin 0\csname\??la\currentlanguage\s!lefthyphenmin \endcsname \righthyphenmin0\csname\??la\currentlanguage\s!righthyphenmin\endcsname\relax % will be definable \doifelsevalue{\??la\currentlanguage\c!spatiering}\v!ruim \nonfrenchspacing\frenchspacing} \ifx\enablelanguagespecifics\undefined \def\enablelanguagespecifics[#1]{} \fi \beginETEX \def\complexlanguage[#1]% {\edef\askedlanguage{#1}% \ifx\askedlanguage\empty \else \ifcsname\l!prefix!\askedlanguage\endcsname \edef\askedlanguage{\csname\l!prefix!\askedlanguage\endcsname}% \ifx\currentlanguage\askedlanguage \else \let\currentlanguage\askedlanguage \docomplexlanguage \fi \else \showmessage\m!linguals6{#1}% \fi \fi} \endETEX \beginTEX \def\complexlanguage[#1]% {\edef\askedlanguage{#1}% \ifx\askedlanguage\empty \else \@EA\ifx\csname\l!prefix!\askedlanguage\endcsname\relax \showmessage\m!linguals6{#1}% \else \edef\askedlanguage{\csname\l!prefix!\askedlanguage\endcsname}% \ifx\currentlanguage\askedlanguage \else \let\currentlanguage\askedlanguage \docomplexlanguage \fi \fi \fi} \endTEX \let\simplelanguage\normallanguage \definecomplexorsimple\language \beginETEX \def\mainlanguage[#1]% {\edef\askedlanguage{#1}% \ifx\askedlanguage\empty \else \ifcsname\l!prefix!\askedlanguage\endcsname \edef\askedlanguage{\csname\l!prefix!\askedlanguage\endcsname}% \ifx\currentmainlanguage\askedlanguage \else \let\currentmainlanguage\askedlanguage \let\currentlanguage\askedlanguage \docomplexlanguage \fi \fi \fi} \endETEX \beginTEX \def\mainlanguage[#1]% {\edef\askedlanguage{#1}% \ifx\askedlanguage\empty \else \@EA\ifx\csname\l!prefix!\askedlanguage\endcsname\relax\else \edef\askedlanguage{\csname\l!prefix!\askedlanguage\endcsname}% \ifx\currentmainlanguage\askedlanguage \else \let\currentmainlanguage\askedlanguage \let\currentlanguage\askedlanguage \docomplexlanguage \fi \fi \fi} \endTEX %D \macros %D {defaultlanguage,languagedefault} %D %D The macro \type {\defaultlanguage{id}} expands into the %D default language, when defined, while \type %D {\languagedefault{id}\c!parameter} returns the default's %D parameter. %\def\defaultlanguage#1% % {\@EA\ifx\csname\??la#1\c!default\endcsname\empty % #1% % \else % \@EA\defaultlanguage\@EA{\csname\??la#1\c!default\endcsname}% % \fi} \def\defaultlanguage#1% {\@EA\ifx\csname\??la#1\c!default\endcsname\empty #1% \else \@EA\defaultlanguage\csname\??la#1\c!default\endcsname \fi} \def\languagedefault#1#2% {\csname\??la\defaultlanguage{#1}#2\endcsname} \def\languageparameter#1% {\csname\??la\defaultlanguage\currentlanguage#1\endcsname} % moved % % %D \macros % %D {leftguillemot,rightguillemot,leftsubguillemot,rightsubguillemot, % %D ...single...quote,...double...quote} % %D % %D We assign logical names to all kind of quote and sentence % %D boundary characters. % %D % %D When using Computer Modern Roman, the next definitions % %D looks a bit better than the default ligatures. % %D % %D \starttypen % %D \def\lowerleftsingleninequote {,} % %D \def\lowerleftdoubleninequote {,\kern-.1em,} % %D \def\upperleftsingleninequote {'} % %D \def\upperleftdoubleninequote {''\kern-.1em} % %D \def\upperleftsinglesixquote {`} % %D \def\upperleftdoublesixquote {`\kern-.1em`} % %D % %D \def\lowerrightsingleninequote {,} % %D \def\lowerrightdoubleninequote {,\kern-.1em,} % %D \def\upperrightsingleninequote {'} % %D \def\upperrightdoubleninequote {''} % %D \def\upperrightsinglesixquote {`} % %D \def\upperrightdoublesixquote {\kern-.125em``} % %D \stoptypen % %D % %D But in other fonts, these definitions can give problems, so % %D we just say: % % \def\lowerleftsingleninequote {,} % \def\lowerleftdoubleninequote {,,} % \def\upperleftsingleninequote {'} % \def\upperleftdoubleninequote {''} % \def\upperleftsinglesixquote {`} % \def\upperleftdoublesixquote {``} % % \def\lowerrightsingleninequote {,} % \def\lowerrightdoubleninequote {,,} % \def\upperrightsingleninequote {'} % \def\upperrightdoubleninequote {''} % \def\upperrightsinglesixquote {`} % \def\upperrightdoublesixquote {``} % % %D Yes I know, they are ugly: % % \def\leftfakeguillemot % {\dontleavehmode\hbox{\raise.25ex\hbox{$\scriptscriptstyle\ll$}}} % % \def\rightfakeguillemot % {\hbox{\raise.25ex\hbox{$\scriptscriptstyle\gg$}}} % % \def\leftsubfakeguillemot % {\dontleavehmode\hbox{\raise.25ex\hbox{$\scriptscriptstyle<$}}} % % \def\rightsubfakeguillemot % {\hbox{\raise.25ex\hbox{$\scriptscriptstyle>$}}} %D New (see nomarking and nolist): \def\splitsequence#1#2% {\doifelse{#1}\v!nee {#2}{\doifelse{#1}\v!ja{\languageparameter\c!limittext}{#1}}} \def\splitsymbol#1% {\splitsequence{#1}{\languageparameter\c!limittext}} %D Just like with subsentence boundary symbols, quotes %D placement depends on the current language, therefore we show %D the defaults here. %D %D \def\ShowLanguageValues [#1] [#2] #3 #4 %D {\blanko %D \startregelcorrectie %D \vbox\bgroup %D \language[#1]% %D \setbox0=\hbox to \hsize{\hss\bf#2 subsentence symbol and quotes\hss} %D \dp0=0pt %D \box0 %D \vskip.5em %D \hrule %D \vskip.5em %D \let\normalbar=| %D \hbox to \hsize %D {\hfil\citaat{#3 #4}\hfil\citeer{#2}\hfil %D \let|=\normalbar\strut|<||<|#3|>|#4|>|\hfil} %D \vskip.5em %D \hrule %D \egroup %D \stopregelcorrectie %D \blanko} %D %D \ShowLanguageValues [af] [afrikaans] afrikaanse ... %D \ShowLanguageValues [ca] [catalan] catalan ... %D \ShowLanguageValues [cz] [czech] tjechisch tex %D \ShowLanguageValues [cz] [slovak] slowaakse ... %D \ShowLanguageValues [da] [danish] deense ... %D \ShowLanguageValues [de] [german] duitse degelijkheid %D \ShowLanguageValues [en] [english] engelse humor %D \ShowLanguageValues [fi] [finnish] finse ... %D \ShowLanguageValues [fr] [french] franse slag %D \ShowLanguageValues [it] [italian] italiaanse ... %D \ShowLanguageValues [la] [latin] latijnse missen %D \ShowLanguageValues [nl] [dutch] nederlandse zuinigheid %D \ShowLanguageValues [no] [norwegian] noorse ... %D \ShowLanguageValues [pl] [polish] poolse ... %D \ShowLanguageValues [pt] [portuguese] portugese ... %D \ShowLanguageValues [es] [spanish] spaans benauwd %D \ShowLanguageValues [sv] [swedish] zweedse ... %D \ShowLanguageValues [tr] [turkish] turks fruit %D We support a lot of languages. These are specified and %D loaded in separate files, according to their roots. Here %D we only take care of (postponed) setting of the current %D language. %D %D \unprotect %D \plaatstabel{The germanic languages (\type{lang-ger})} %D \starttabel[||||] %D \HL %D \NC \bf mnemonic \NC \bf language \NC \bf group \NC\SR %D \HL %D \NC \s!nl \NC dutch \NC germanic \NC\FR %D \NC \s!en \NC english \NC germanic \NC\MR %D \NC \s!de \NC german \NC germanic \NC\MR %D \NC \s!da \NC danish \NC germanic \NC\MR %D \NC \s!sv \NC swedish \NC germanic \NC\MR %D \NC \s!af \NC afrikaans \NC germanic \NC\MR %D \NC \s!no \NC norwegian \NC germanic \NC\LR %D \HL %D \stoptabel %D \protect %D %D \unprotect %D \plaatstabel{The italic languages (\type{lang-ita})} %D \starttabel[||||] %D \HL %D \NC \bf mnemonic \NC \bf language \NC \bf group \NC\SR %D \HL %D \NC \s!fr \NC french \NC italic \NC\FR %D \NC \s!ca \NC catalan \NC italic \NC\MR %D \NC \s!es \NC spanish \NC italic \NC\MR %D \NC \s!it \NC italian \NC italic \NC\MR %D \NC \s!la \NC latin \NC italic \NC\MR %D \NC \s!pt \NC portuguese \NC italic \NC\LR %D \HL %D \stoptabel %D \protect %D %D \unprotect %D \plaatstabel{The slavic languages (\type{lang-sla})} %D \starttabel[||||] %D \HL %D \NC \bf mnemonic \NC \bf language \NC \bf group \NC\SR %D \HL %D \NC \s!pl \NC polish \NC slavic \NC\FR %D \NC \s!cz \NC czech \NC slavic \NC\MR %D \NC \s!sk \NC slavik \NC slavic \NC\LR %D \HL %D \stoptabel %D \protect %D \unprotect %D %D \plaatstabel{The altaic languages (\type{lang-alt})} %D \starttabel[||||] %D \HL %D \NC \bf mnemonic \NC \bf language \NC \bf group \NC\SR %D \HL %D \NC \s!tr \NC turkish \NC altaic \NC\SR %D \HL %D \stoptabel %D %D \plaatstabel{The uralic languages (\type{lang-ura})} %D \starttabel[||||] %D \HL %D \NC \bf mnemonic \NC \bf language \NC \bf group \NC\SR %D \HL %D \NC \s!fi \NC finnish \NC uralic \NC\SR %D \HL %D \stoptabel %D \protect % \bgroup \normallanguage255 \patterns{} \egroup % \def\nopatterns{\normallanguage255 } \def\nopatterns{\normallanguage\minusone} %D We default to the language belonging to the interface. This %D is one of the few places outside the interface modules where %D \type{\startinterface} is used. \let\normaldoublequote =" \let\normalforwardslash=/ %D We default to english: \setupcurrentlanguage[\s!en] \appendtoks\mainlanguage[\currentlanguage]\to\everyjob \appendtoks\showmessage\m!linguals9\currentlanguage\to\everyjob \protect \endinput
%D \module %D [ file=lang-ita, %D version=1997.09.03, %D title=\CONTEXT\ Language Macros, %D subtitle=Italic Languages, %D author=Hans Hagen / Tobias Burnus, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. %D Todo: replace \'.. by \namedglyph \writestatus{loading}{Italic Languages} %D The framework of this module is set up by Hans Hagen while %D many of the first translations were done by Tobias. Later %D on, corrections were made by users. If you have suggestions, %D or feel that your name missing here, don't hesitate to send %D us an email. %D %D \starttabulate[|lB|l|] %D \NC Italian \NC Giuseppe Bilotta \NC \NR %D \NC Rumanian \NC Dan Seracu \NC \NR %D \stoptabulate % Latin, Italian, Rhaeto-Romanic, Rumanian, Sardian % Catalan, French, Ladino, Portuguese, Proven\c{c}al, Spanish \unprotect \ifx\guillemotspace\undefined \let\guillemotspace\empty \fi \ifx\sentencespace \undefined \let\sentencespace \empty \fi \installlanguage [\s!fr] [\c!spatiering=\v!opelkaar, \c!leftsentence=\emdash, \c!rightsentence=\emdash, \c!leftsubsentence=\emdash, \c!rightsubsentence=\emdash, \c!leftquote=\leftguillemot, \c!rightquote=\rightguillemot, \c!leftquotation=\leftguillemot, \c!rightquotation=\rightguillemot, \c!datum={\v!dag+,\v!spatie,\v!maand,\v!spatie,\v!jaar}, \c!status=\v!stop] \installlanguage [\s!es] [\c!spatiering=\v!opelkaar, \c!leftsentence=---, \c!rightsentence=---, \c!leftsubsentence=---, \c!rightsubsentence=---, \c!leftquote=\upperleftsinglesixquote, \c!rightquote=\upperrightsingleninequote, \c!leftquotation=\upperleftdoublesixquote, \c!rightquotation=\upperrightdoubleninequote, \c!datum={\v!dag,\ ,\v!maand,\ ,\v!jaar}, \c!status=\v!stop] \installlanguage [sp] [\s!es] % old times context \installlanguage [\s!ca] [\c!spatiering=\v!opelkaar, \c!leftsentence=---, \c!rightsentence=---, \c!leftsubsentence=---, \c!rightsubsentence=---, \c!leftquote=\upperleftsinglesixquote, \c!rightquote=\upperrightsingleninequote, \c!leftquotation=\upperleftdoublesixquote, \c!rightquotation=\upperrightdoubleninequote, \c!datum={\v!dag,\ ,\v!maand,\ ,\v!jaar}, \c!status=\v!stop] % Note GB left|/|right (sub)sentences are for \quote {incisi}. \installlanguage [\s!it] [\c!spatiering=\v!opelkaar, \c!leftsentence=---, \c!rightsentence=---, \c!leftsubsentence=--, \c!rightsubsentence=--, \c!leftquote=\upperleftsinglesixquote, \c!rightquote=\upperrightsingleninequote, \c!leftquotation=\upperleftdoublesixquote, \c!rightquotation=\upperrightdoubleninequote, \c!leftspeech=\leftguillemot, \c!middlespeech=\leftguillemot, \c!rightspeech=\rightguillemot, \c!datum={\v!dag,\ ,\v!maand,\ ,\v!jaar}, \c!status=\v!stop] \installlanguage % the same as italian [\s!la] [\c!spatiering=\v!opelkaar, \c!leftsentence=---, \c!rightsentence=---, \c!leftsubsentence=---, \c!rightsubsentence=---, \c!leftquote=\upperleftsinglesixquote, \c!rightquote=\lowerrightsingleninequote, \c!leftquotation=\upperleftdoublesixquote, \c!rightquotation=\lowerrightdoubleninequote, \c!datum={\v!dag,\ ,\v!maand,\ ,\v!jaar}, \c!status=\v!stop] \installlanguage [\s!pt] [\c!spatiering=\v!opelkaar, \c!leftsentence=---, \c!rightsentence=---, \c!leftsubsentence=---, \c!rightsubsentence=---, \c!leftquote=\upperleftsinglesixquote, \c!rightquote=\upperrightsingleninequote, \c!leftquotation=\upperleftdoublesixquote, \c!rightquotation=\upperrightdoubleninequote, \c!datum={\v!jaar,\ ,\v!maand,\ ,\v!dag}, \c!status=\v!stop] \installlanguage [\s!ro] [\c!spatiering=\v!opelkaar, \c!leftsentence=---, \c!rightsentence=---, \c!leftsubsentence=---, \c!rightsubsentence=---, \c!leftquote=\leftguillemot, \c!rightquote=\rightguillemot, \c!leftquotation=\lowerrightdoubleninequote, \c!rightquotation=\upperleftdoublesixquote, \c!datum={\v!dag,\ ,\v!maand,\ ,\v!jaar}, \c!status=\v!stop] %D For compatibility reasons we also define: \installlanguage [fa] [\s!fr] % for dutchies only \installlanguage [french] [\s!fr] \installlanguage [spanish] [\s!es] \installlanguage [catalan] [\s!ca] \installlanguage [italian] [\s!it] \installlanguage [latin] [\s!la] \installlanguage [portuguese] [\s!pt] \installlanguage [romanian] [\s!ro] %D Labels and header texts. \setupheadtext [\s!fr] [\v!inhoud=Table des mati\`eres] \setupheadtext [\s!es] [\v!inhoud=\'Indice] \setupheadtext [\s!ca] [\v!inhoud=\'Index de continguts] \setupheadtext [\s!it] [\v!inhoud=Indice] \setupheadtext [\s!la] [\v!inhoud=Quod in libro continetur] %Argumentum \setupheadtext [\s!pt] [\v!inhoud=Conte\'ud] \setupheadtext [\s!ro] [\v!inhoud=Cuprins] \setupheadtext [\s!fr] [\v!tabellen=Tables] \setupheadtext [\s!es] [\v!tabellen=Tablas] \setupheadtext [\s!ca] [\v!tabellen=Taules] \setupheadtext [\s!it] [\v!tabellen=Tabelle] \setupheadtext [\s!la] [\v!tabellen=Tabulae] \setupheadtext [\s!pt] [\v!tabellen=Tabelas] \setupheadtext [\s!ro] [\v!tabellen=Tabele] \setupheadtext [\s!fr] [\v!figuren=Figures] \setupheadtext [\s!es] [\v!figuren=Ilustraciones] \setupheadtext [\s!ca] [\v!figuren=Figures] \setupheadtext [\s!it] [\v!figuren=Figure] \setupheadtext [\s!la] [\v!figuren=Imagines] \setupheadtext [\s!pt] [\v!figuren=Figuras] \setupheadtext [\s!ro] [\v!figuren=Figuri] \setupheadtext [\s!fr] [\v!grafieken=Graphiques] \setupheadtext [\s!es] [\v!grafieken=Gr\'aficos] \setupheadtext [\s!ca] [\v!grafieken=Gr\`afiques] \setupheadtext [\s!it] [\v!grafieken=Grafici] \setupheadtext [\s!la] [\v!grafieken=Typi] \setupheadtext [\s!pt] [\v!grafieken=Gr\'aficos] \setupheadtext [\s!ro] [\v!grafieken=Grafice] \setupheadtext [\s!fr] [\v!intermezzos=Interm\`edes] \setupheadtext [\s!es] [\v!intermezzos=intermedios] \setupheadtext [\s!ca] [\v!intermezzos=intermedis] \setupheadtext [\s!it] [\v!intermezzos=Intermezzi] \setupheadtext [\s!la] [\v!intermezzos=Intermissa] \setupheadtext [\s!pt] [\v!intermezzos=Intermezzi] \setupheadtext [\s!ro] [\v!intermezzos=Intermzzo] \setupheadtext [\s!fr] [\v!index=Index] \setupheadtext [\s!es] [\v!index=\'Indice alfab\'etico] \setupheadtext [\s!ca] [\v!index=\'Index alfab\`etic] \setupheadtext [\s!it] [\v!index=Indice] \setupheadtext [\s!la] [\v!index=Indices] \setupheadtext [\s!pt] [\v!index=\'Indice] \setupheadtext [\s!ro] [\v!index=Index] \setupheadtext [\s!fr] [\v!afkortingen=Abr\'eviations] \setupheadtext [\s!es] [\v!afkortingen=Abreviaciones] \setupheadtext [\s!ca] [\v!afkortingen=Abreviacions] \setupheadtext [\s!it] [\v!afkortingen=Abbreviazioni] \setupheadtext [\s!la] [\v!afkortingen=Notae] \setupheadtext [\s!pt] [\v!afkortingen=Abreviaturas] \setupheadtext [\s!ro] [\v!afkortingen=Abrevieri] \setupheadtext [\s!fr] [\v!logos=Logos] \setupheadtext [\s!es] [\v!logos=Logotipos] \setupheadtext [\s!ca] [\v!logos=Logotips] \setupheadtext [\s!it] [\v!logos=Logotipi] \setupheadtext [\s!la] [\v!logos=Typi negotiales] \setupheadtext [\s!pt] [\v!logos=Logotipos] \setupheadtext [\s!ro] [\v!logos=Logo-uri] \setupheadtext [\s!fr] [\v!eenheden=Unit\'es] \setupheadtext [\s!es] [\v!eenheden=Unidades] \setupheadtext [\s!ca] [\v!eenheden=Unitats] \setupheadtext [\s!it] [\v!eenheden=Unit\`a] \setupheadtext [\s!la] [\v!eenheden=Modi] \setupheadtext [\s!pt] [\v!eenheden=Unidades] \setupheadtext [\s!ro] [\v!eenheden=Unit\u{a}\c{t}i] \setuplabeltext [\s!fr] [\v!tabel=Table ] \setuplabeltext [\s!es] [\v!tabel=Tablas ] \setuplabeltext [\s!ca] [\v!tabel=Taules ] \setuplabeltext [\s!it] [\v!tabel=Tabella ] \setuplabeltext [\s!la] [\v!tabel=Tabula ] \setuplabeltext [\s!pt] [\v!tabel=Tabela ] \setuplabeltext [\s!ro] [\v!tabel=Tabelul ] \setuplabeltext [\s!fr] [\v!figuur=Figure ] \setuplabeltext [\s!es] [\v!figuur=Ilustraci\'on ] \setuplabeltext [\s!ca] [\v!figuur=Figura ] \setuplabeltext [\s!it] [\v!figuur=Fig. ] \setuplabeltext [\s!la] [\v!figuur=Imago ] \setuplabeltext [\s!pt] [\v!figuur=Figura ] \setuplabeltext [\s!ro] [\v!figuur=Figura ] \setuplabeltext [\s!fr] [\v!intermezzo=Interm\`ede ] \setuplabeltext [\s!es] [\v!intermezzo=Intermedio ] \setuplabeltext [\s!ca] [\v!intermezzo=Intermedi ] \setuplabeltext [\s!it] [\v!intermezzo=Intermezzo ] \setuplabeltext [\s!la] [\v!intermezzo=Intermissum ] \setuplabeltext [\s!pt] [\v!intermezzo=Intermezzo ] \setuplabeltext [\s!ro] [\v!intermezzo=Intermezzo ] \setuplabeltext [\s!fr] [\v!grafiek=Illustration ] \setuplabeltext [\s!es] [\v!grafiek=Gr\'afico ] \setuplabeltext [\s!ca] [\v!grafiek=Gr\'afica ] \setuplabeltext [\s!it] [\v!grafiek=Grafico ] \setuplabeltext [\s!la] [\v!grafiek=Typus ] \setuplabeltext [\s!pt] [\v!grafiek=Gr\'afico ] \setuplabeltext [\s!ro] [\v!grafiek=Graficul ] \setuplabeltext [\s!fr] [\v!hoofdstuk=] \setuplabeltext [\s!es] [\v!hoofdstuk=] \setuplabeltext [\s!ca] [\v!hoofdstuk=] \setuplabeltext [\s!it] [\v!hoofdstuk=] \setuplabeltext [\s!la] [\v!hoofdstuk=] \setuplabeltext [\s!pt] [\v!hoofdstuk=] \setuplabeltext [\s!ro] [\v!hoofdstuk=] \setuplabeltext [\s!fr] [\v!paragraaf=] \setuplabeltext [\s!es] [\v!paragraaf=] \setuplabeltext [\s!ca] [\v!paragraaf=] \setuplabeltext [\s!it] [\v!paragraaf=] \setuplabeltext [\s!la] [\v!paragraaf=] \setuplabeltext [\s!pt] [\v!paragraaf=] \setuplabeltext [\s!ro] [\v!paragraaf=] \setuplabeltext [\s!fr] [\v!sub\v!paragraaf=] \setuplabeltext [\s!es] [\v!sub\v!paragraaf=] \setuplabeltext [\s!ca] [\v!sub\v!paragraaf=] \setuplabeltext [\s!it] [\v!sub\v!paragraaf=] \setuplabeltext [\s!la] [\v!sub\v!paragraaf=] \setuplabeltext [\s!pt] [\v!sub\v!paragraaf=] \setuplabeltext [\s!ro] [\v!sub\v!paragraaf=] \setuplabeltext [\s!fr] [\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!es] [\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!ca] [\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!it] [\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!la] [\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!pt] [\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!ro] [\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!fr] [\v!sub\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!es] [\v!sub\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!ca] [\v!sub\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!it] [\v!sub\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!la] [\v!sub\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!pt] [\v!sub\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!ro] [\v!sub\v!sub\v!sub\v!paragraaf=] \setuplabeltext [\s!fr] [\v!bijlage=] \setuplabeltext [\s!es] [\v!bijlage=] \setuplabeltext [\s!ca] [\v!bijlage=] \setuplabeltext [\s!it] [\v!bijlage=] \setuplabeltext [\s!la] [\v!bijlage=] \setuplabeltext [\s!pt] [\v!bijlage=] \setuplabeltext [\s!ro] [\v!bijlage=] \setuplabeltext [\s!fr] [\v!deel=Partie ] \setuplabeltext [\s!es] [\v!deel=Parte ] \setuplabeltext [\s!ca] [\v!deel=Part ] \setuplabeltext [\s!it] [\v!deel=Parte ] \setuplabeltext [\s!la] [\v!deel=Pars ] \setuplabeltext [\s!pt] [\v!deel=Parte ] \setuplabeltext [\s!ro] [\v!deel=Partea ] \setuplabeltext [\s!fr] [\v!regel=ligne ] \setuplabeltext [\s!es] [\v!regel=l\'\i nea ] \setuplabeltext [\s!ca] [\v!regel=l\'\i nia ] \setuplabeltext [\s!it] [\v!regel=riga ] \setuplabeltext [\s!la] [\v!regel=versus ] \setuplabeltext [\s!pt] [\v!regel=linha ] \setuplabeltext [\s!ro] [\v!regel=linia ] \setuplabeltext [\s!fr] [\v!regels=lignes ] \setuplabeltext [\s!es] [\v!regels=l\'\i neas ] \setuplabeltext [\s!ca] [\v!regels=l\'\i nies ] \setuplabeltext [\s!it] [\v!regels=righe ] \setuplabeltext [\s!la] [\v!regels=versus ] \setuplabeltext [\s!pt] [\v!regels=linhas ] \setuplabeltext [\s!ro] [\v!regels=liniile ] \setuplabeltext [\s!fr] [\v!january=janvier] \setuplabeltext [\s!fr] [\v!february=f\'evrier] \setuplabeltext [\s!fr] [\v!march=mars] \setuplabeltext [\s!fr] [\v!april=avril] \setuplabeltext [\s!fr] [\v!may=mai] \setuplabeltext [\s!fr] [\v!june=juin] \setuplabeltext [\s!fr] [\v!july=juillet] \setuplabeltext [\s!fr] [\v!august=ao\^ut] \setuplabeltext [\s!fr] [\v!september=septembre] \setuplabeltext [\s!fr] [\v!october=octobre] \setuplabeltext [\s!fr] [\v!november=novembre] \setuplabeltext [\s!fr] [\v!december=d\'ecembre] \setuplabeltext [\s!es] [\v!january=enero] \setuplabeltext [\s!es] [\v!february=febrero] \setuplabeltext [\s!es] [\v!march=marzo] \setuplabeltext [\s!es] [\v!april=abril] \setuplabeltext [\s!es] [\v!may=mayo] \setuplabeltext [\s!es] [\v!june=junio] \setuplabeltext [\s!es] [\v!july=julio] \setuplabeltext [\s!es] [\v!august=agosto] \setuplabeltext [\s!es] [\v!september=septiembre] \setuplabeltext [\s!es] [\v!october=octubre] \setuplabeltext [\s!es] [\v!november=noviembre] \setuplabeltext [\s!es] [\v!december=diciembre] \setuplabeltext [\s!ca] [\v!january=gener] \setuplabeltext [\s!ca] [\v!february=febrer] \setuplabeltext [\s!ca] [\v!march=mar\,c] \setuplabeltext [\s!ca] [\v!april=abril] \setuplabeltext [\s!ca] [\v!may=maig] \setuplabeltext [\s!ca] [\v!june=juny] \setuplabeltext [\s!ca] [\v!july=juliol] \setuplabeltext [\s!ca] [\v!august=agost] \setuplabeltext [\s!ca] [\v!september=septembre] \setuplabeltext [\s!ca] [\v!october=octubre] \setuplabeltext [\s!ca] [\v!november=novembre] \setuplabeltext [\s!ca] [\v!december=decembre] \setuplabeltext [\s!it] [\v!january=gennaio] \setuplabeltext [\s!it] [\v!february=febbraio] \setuplabeltext [\s!it] [\v!march=marzo] \setuplabeltext [\s!it] [\v!april=aprile] \setuplabeltext [\s!it] [\v!may=maggio] \setuplabeltext [\s!it] [\v!june=giugno] \setuplabeltext [\s!it] [\v!july=luglio] \setuplabeltext [\s!it] [\v!august=agosto] \setuplabeltext [\s!it] [\v!september=settembre] \setuplabeltext [\s!it] [\v!october=ottobre] \setuplabeltext [\s!it] [\v!november=novembre] \setuplabeltext [\s!it] [\v!december=dicembre] \setuplabeltext [\s!la] [\v!january=Ianuarius] \setuplabeltext [\s!la] [\v!february=Februarius] \setuplabeltext [\s!la] [\v!march=Martius] \setuplabeltext [\s!la] [\v!april=Aprilis] \setuplabeltext [\s!la] [\v!may=Maius] \setuplabeltext [\s!la] [\v!june=Iunius] \setuplabeltext [\s!la] [\v!july=Iulius] % formerly Quintilis \setuplabeltext [\s!la] [\v!august=Augustus] % formerly Sextilis \setuplabeltext [\s!la] [\v!september=September] \setuplabeltext [\s!la] [\v!october=October] \setuplabeltext [\s!la] [\v!november=November] \setuplabeltext [\s!la] [\v!december=December] \setuplabeltext [\s!pt] [\v!january=janeiro] \setuplabeltext [\s!pt] [\v!february=fevereiro] \setuplabeltext [\s!pt] [\v!march=mar\c{c}o] \setuplabeltext [\s!pt] [\v!april=abril] \setuplabeltext [\s!pt] [\v!may=maio] \setuplabeltext [\s!pt] [\v!june=junho] \setuplabeltext [\s!pt] [\v!july=julho] \setuplabeltext [\s!pt] [\v!august=agosto] \setuplabeltext [\s!pt] [\v!september=setembro] \setuplabeltext [\s!pt] [\v!october=outubro] \setuplabeltext [\s!pt] [\v!november=novembro] \setuplabeltext [\s!pt] [\v!december=dezembro] \setuplabeltext [\s!ro] [\v!january=ianuarie] \setuplabeltext [\s!ro] [\v!february=februarie] \setuplabeltext [\s!ro] [\v!march=martie] \setuplabeltext [\s!ro] [\v!april=aprilie] \setuplabeltext [\s!ro] [\v!may=mai] \setuplabeltext [\s!ro] [\v!june=iunie] \setuplabeltext [\s!ro] [\v!july=iulie] \setuplabeltext [\s!ro] [\v!august=august] \setuplabeltext [\s!ro] [\v!september=septembrie] \setuplabeltext [\s!ro] [\v!october=octombrie] \setuplabeltext [\s!ro] [\v!november=noiembrie] \setuplabeltext [\s!ro] [\v!december=decembrie] \setuplabeltext [\s!fr] [\v!sunday=dimanche] \setuplabeltext [\s!fr] [\v!monday=lundi] \setuplabeltext [\s!fr] [\v!tuesday=mardi] \setuplabeltext [\s!fr] [\v!wednesday=mercredi] \setuplabeltext [\s!fr] [\v!thursday=jeudi] \setuplabeltext [\s!fr] [\v!friday=vendredi] \setuplabeltext [\s!fr] [\v!saturday=samedi] \setuplabeltext [\s!es] [\v!sunday=domingo] \setuplabeltext [\s!es] [\v!monday=lunes] \setuplabeltext [\s!es] [\v!tuesday=martes] \setuplabeltext [\s!es] [\v!wednesday=mi\'ercoles] \setuplabeltext [\s!es] [\v!thursday=jueves] \setuplabeltext [\s!es] [\v!friday=viernes] \setuplabeltext [\s!es] [\v!saturday=s\'abado] \setuplabeltext [\s!ca] [\v!sunday=diumenge] \setuplabeltext [\s!ca] [\v!monday=dilluns] \setuplabeltext [\s!ca] [\v!tuesday=dimarts] \setuplabeltext [\s!ca] [\v!wednesday=dimecres] \setuplabeltext [\s!ca] [\v!thursday=dijous] \setuplabeltext [\s!ca] [\v!friday=divendres] \setuplabeltext [\s!ca] [\v!saturday=dissabte] \setuplabeltext [\s!it] [\v!sunday=domenica] \setuplabeltext [\s!it] [\v!monday=luned\`\i] \setuplabeltext [\s!it] [\v!tuesday=marted\`\i] \setuplabeltext [\s!it] [\v!wednesday=mercoled\`\i] \setuplabeltext [\s!it] [\v!thursday=gioved\`\i] \setuplabeltext [\s!it] [\v!friday=venerd\`\i] \setuplabeltext [\s!it] [\v!saturday=sabato] \setuplabeltext [\s!la] [\v!sunday=Dies Solis] \setuplabeltext [\s!la] [\v!monday=Dies Lunae] \setuplabeltext [\s!la] [\v!tuesday=Dies Martis] \setuplabeltext [\s!la] [\v!wednesday=Dies Mercuri] \setuplabeltext [\s!la] [\v!thursday=Dies Iovis] \setuplabeltext [\s!la] [\v!friday=Dies Veneris] \setuplabeltext [\s!la] [\v!saturday=Dies Saturni] \setuplabeltext [\s!pt] [\v!sunday=domingo] \setuplabeltext [\s!pt] [\v!monday=segunda-feira] \setuplabeltext [\s!pt] [\v!tuesday=ter\c{c}a-feira] \setuplabeltext [\s!pt] [\v!wednesday=quarta-feira] \setuplabeltext [\s!pt] [\v!thursday=quinta-feira] \setuplabeltext [\s!pt] [\v!friday=sexta-feira] \setuplabeltext [\s!pt] [\v!saturday=s\'abado] \setuplabeltext [\s!ro] [\v!sunday=duminic\u{a}] \setuplabeltext [\s!ro] [\v!monday=luni] \setuplabeltext [\s!ro] [\v!tuesday=mar\c{t}i] \setuplabeltext [\s!ro] [\v!wednesday=miercuri] \setuplabeltext [\s!ro] [\v!thursday=joi] \setuplabeltext [\s!ro] [\v!friday=vineri] \setuplabeltext [\s!ro] [\v!saturday=s\^{a}mb\u{a}t\u{a}] % \startlanguagespecifics[\s!ro] % % \installcompoundcharacter "a {\u{a}} % \installcompoundcharacter "i {\^{\i}} % \installcompoundcharacter "s {\c{s}} % \installcompoundcharacter "t {\c{t}} % \installcompoundcharacter "A {\^{a}} % \installcompoundcharacter "I {\^{I}} % \installcompoundcharacter "S {\c{S}} % \installcompoundcharacter "T {\c{T}} % \installcompoundcharacter "` {\handlequotation\c!leftquotation} % \installcompoundcharacter "' {\handlequotation\c!rightquotation} % % \stoplanguagespecifics %D Rather new \unknown \setuplabeltext [\s!it] [\v!pagina=pagina ] \setuplabeltext [\s!it] [\v!oppagina=a pagina ] \setuplabeltext [\s!it] [\v!hierboven=come mostrato sopra] \setuplabeltext [\s!it] [\v!hieronder=come mostrato sotto] \setuplabeltext [\s!it] [\v!zie=cf. ] %D Ordinal converters: \def\frordinaldaynumber#1% date is masculine {\number#1\ifcase#1\or \highordinalstr{er}% \fi} \defineconversion [\s!fr] [\v!dag+] [\frordinaldaynumber] %D \ShowAllLanguageValues [\s!fr] [french] franse slag %D \ShowAllLanguageValues [\s!es] [spanish] spaans benauwd %D \ShowAllLanguageValues [\s!ca] [catalan] catalaans ... %D \ShowAllLanguageValues [\s!it] [italian] italiaanse ... %D \ShowAllLanguageValues [\s!la] [latin] latijnse missen %D \ShowAllLanguageValues [\s!pt] [portuguese] portugese ... %D \ShowAllLanguageValues [\s!ro] [romanian] romanian ... \protect \endinput
%D \module %D [ file=mult-sys, %D version=1996.06.01, %D title=\CONTEXT\ Multilingual Macros, %D subtitle=System, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. %D In boring module we define a lot of obscure but useful %D system constants. By doing so we save lots of memory while %D at the same time we prevent ourself from typing errors. \writestatus{loading}{Context Multilingual Macros / System} \unprotect %D The constants are grouped in such a way that there is a %D minimal change of conflicts. %D %D \starttypen %D \definesystemconstants {word} %D \definemessageconstant {word} %D \stoptypen %D %D This commands generate \type{\s!word} and \type{\m!word}. %D First we define some system constants used for both the %D multi||lingual interface and multi||linguag typesetting. \definesystemconstant {afrikaans} \definesystemconstant {af} \definesystemconstant {catalan} \definesystemconstant {ca} \definesystemconstant {chinese} \definesystemconstant {cn} \definesystemconstant {croation} \definesystemconstant {hr} \definesystemconstant {czech} \definesystemconstant {cz} \definesystemconstant {danish} \definesystemconstant {da} \definesystemconstant {dutch} \definesystemconstant {nl} \definesystemconstant {english} \definesystemconstant {en} \definesystemconstant {finish} \definesystemconstant {fi} \definesystemconstant {french} \definesystemconstant {fr} \definesystemconstant {german} \definesystemconstant {de} \definesystemconstant {hungarian} \definesystemconstant {hu} \definesystemconstant {italian} \definesystemconstant {it} \definesystemconstant {latin} \definesystemconstant {la} \definesystemconstant {norwegian} \definesystemconstant {no} \definesystemconstant {polish} \definesystemconstant {pl} \definesystemconstant {portuguese} \definesystemconstant {pt} \definesystemconstant {romanian} \definesystemconstant {ro} \definesystemconstant {russian} \definesystemconstant {ru} \definesystemconstant {slovak} \definesystemconstant {sk} \definesystemconstant {spanish} \definesystemconstant {es} \definesystemconstant {swedish} \definesystemconstant {sv} \definesystemconstant {turkish} \definesystemconstant {tr} \definesystemconstant {ukenglish} \definesystemconstant {uk} \definesystemconstant {ukrainian} \definesystemconstant {ua} \definesystemconstant {usenglish} \definesystemconstant {us} %D For proper \UNICODE\ support we need a few font related %D constants. \definesystemconstant {BoldItalic} \definesystemconstant {BoldSlanted} \definesystemconstant {Bold} \definesystemconstant {Italic} \definesystemconstant {Regular} \definesystemconstant {Slanted} \definesystemconstant {Unicode} \definesystemconstant {Serif} \definesystemconstant {Regular} \definesystemconstant {Sans} \definesystemconstant {Support} \definesystemconstant {Mono} \definesystemconstant {Type} %D As the name of their define command states, the next set of %D constants is used in the message macro's. \definemessageconstant {colors} \definemessageconstant {columns} \definemessageconstant {encodings} \definemessageconstant {figures} \definemessageconstant {files} \definemessageconstant {floatblocks} \definemessageconstant {fonts} \definemessageconstant {handlings} \definemessageconstant {interactions} \definemessageconstant {javascript} \definemessageconstant {layouts} \definemessageconstant {linguals} \definemessageconstant {references} \definemessageconstant {specials} \definemessageconstant {structures} \definemessageconstant {symbols} \definemessageconstant {systems} \definemessageconstant {textblocks} \definemessageconstant {verbatims} \definemessageconstant {versions} %D The word \type{height} takes 6~token memory cells. The %D control sequence \type{\height} on the other hand uses only %D one. Knowing this, we can improve the performance of \TEX, %D both is terms of speed and memory usage, by using control %D sequences instead of the words written in full. %D %D Where in the \ASCII\ file the second lines takes nine extra %D characters, \TEX\ saves us 13~tokens. %D %D \starttypen %D \hrule width 10pt height 2pt depth 1pt %D \hrule \!!width 10pt \!!height 2pt \!!depth 1pt %D \stoptypen %D %D One condition is that we have defined \type{\!!height}, %D \type{\!!width} and \type{\!!depth} as respectively %D \type{height}, \type{width} and \type{depth}. Using this %D scheme therefore only makes sense when a token sequence is %D used more than once. Savings like this should of course be %D implemented in english, just because \TEX\ is english. \def\!!width {width} \def\!!height {height} \def\!!depth {depth} \def\!!plus {plus} \def\!!minus {minus} \def\!!fill {fill} \def\!!to {to} %D The same goes for some \CONTEXT\ constants, used in the %D definition of private commands: \definesystemconstant {next} \definesystemconstant {pickup} \definesystemconstant {ascii} \definesystemconstant {default} \definesystemconstant {unknown} \definesystemconstant {action} \definesystemconstant {compare} \definesystemconstant {do} \definesystemconstant {dodo} \definesystemconstant {complex} \definesystemconstant {simple} \definesystemconstant {start} \definesystemconstant {stop} \definesystemconstant {dummy} \definesystemconstant {local} \definesystemconstant {global} \definesystemconstant {done} \definesystemconstant {font} %D A more experienced \TEX\ user will recognize the next four %D constants. We need these because font-definitions are %D partially english. \definesystemconstant {run} \definesystemconstant {fam} \definesystemconstant {text} \definesystemconstant {script} \definesystemconstant {scriptscript} \definesystemconstant {lefthyphenmin} \definesystemconstant {righthyphenmin} \definesystemconstant {skewchar} \definesystemconstant {hyphenchar} \definesystemconstant {encoding} \definesystemconstant {mapping} \definesystemconstant {patterns} \definesystemconstant {rscale} \definesystemconstant {handling} \definesystemconstant {ucmap} %D Just to be complete we define the standard \TEX\ units. \definesystemconstant {cm} \definesystemconstant {em} \definesystemconstant {ex} \definesystemconstant {mm} \definesystemconstant {pt} \definesystemconstant {sp} \definesystemconstant {bp} \definesystemconstant {in} %D These constants are used for internal and utility %D commands. \definesystemconstant {check} \definesystemconstant {reset} \definesystemconstant {set} \definesystemconstant {entrya} \definesystemconstant {entryb} \definesystemconstant {entryc} \definesystemconstant {entry} \definesystemconstant {see} \definesystemconstant {from} \definesystemconstant {to} \definesystemconstant {page} \definesystemconstant {line} \definesystemconstant {synonym} \definesystemconstant {reference} \definesystemconstant {main} \definesystemconstant {list} \definesystemconstant {item} \definesystemconstant {itemcount} \definesystemconstant {number} \definesystemconstant {references} \definesystemconstant {between} \definesystemconstant {format} \definesystemconstant {old} \definesystemconstant {thisisblock} \definesystemconstant {thiswasblock} \definesystemconstant {figurepreset} \definesystemconstant {empty} %D Some \CONTEXT\ commands take a two||pass aproach to %D optimize the typesetting. Each two||pass object has its %D own tag. \definesystemconstant {pass} \definesystemconstant {data} \definesystemconstant {float} \definesystemconstant {list} \definesystemconstant {page} \definesystemconstant {subpage} \definesystemconstant {margin} \definesystemconstant {profile} \definesystemconstant {versionbegin} \definesystemconstant {versionend} \definesystemconstant {cross} \definesystemconstant {paragraph} %D A lot of macros use tags to distinguish between different %D objects, e.g. lists and registers. \definesystemconstant {prt} % part (deel) \definesystemconstant {chp} % chapter (hoofdstuk) \definesystemconstant {sec} % section (paragraaf) \definesystemconstant {tit} % title (titel) \definesystemconstant {sub} % subject (onderwerp) \definesystemconstant {mar} % margin (marge) \definesystemconstant {num} % number (doornummeren) \definesystemconstant {def} % definition (doordefinieren) \definesystemconstant {for} % formula (formule) \definesystemconstant {fnt} % footnote (voetnoot) \definesystemconstant {ind} % index (register) \definesystemconstant {lin} % linked index \definesystemconstant {lst} % list (opsomming) \definesystemconstant {flt} % float (plaatsblok) \definesystemconstant {pag} % page (pagina) \definesystemconstant {txt} % text (tekst) \definesystemconstant {ref} % reference (verwijzing) \definesystemconstant {lab} % label (label) \definesystemconstant {aut} % automatic (inhoud, index) \definesystemconstant {vwa} % automatic (illustrations) \definesystemconstant {vwb} % automatic (illustrations) \definesystemconstant {kop} % kop % still dutch %D Reference labels can be tagged by users, for instance by %D means of \type{tag:}. The reference mechanism itself uses %D some tags too. These are definitely not to be used by users. %D Here they are: \definereferenceconstant {cross} {:c:} % cross reference \definereferenceconstant {view} {:v:} % view reference \definereferenceconstant {viewa} {:a:} % view reference test a \definereferenceconstant {viewb} {:b:} % view reference test b \definereferenceconstant {page} {:p:} % page referece \definereferenceconstant {list} {:l:} % list reference \definereferenceconstant {exec} {:e:} % execution reference \definereferenceconstant {form} {:m:} % form reference \definereferenceconstant {syst} {:s:} % system reference \definereferenceconstant {from} {:f:} % from list reference \definereferenceconstant {to} {:t:} % to list reference \definereferenceconstant {object} {:o:} % object reference \definereferenceconstant {driver} {:d:} % driver object reference \definereferenceconstant {widget} {:w:} % field chain reference \definereferenceconstant {java} {:j:} % java scripts %D When we use numbers and dimensions the same applies as %D with the keywords like \type{width} and \type{plus} %D mentioned earlier. \def\!!ten {10} \def\!!twelve {12} \def\!!hundred {100} \def\!!thousand {1000} \def\!!tenthousand {10000} \def\!!maxcard {65536} \def\!!medcard {32768} \def\!!zeropoint {0pt} \def\!!onepoint {1pt} \def\!!twopoint {2pt} \def\!!threepoint {3pt} \def\!!fourpoint {4pt} \def\!!fivepoint {5pt} \def\!!sixpoint {6pt} \def\!!sevenpoint {7pt} \def\!!eightpoint {8pt} \def\!!ninepoint {9pt} \def\!!tenpoint {10pt} \def\!!elevenpoint {11pt} \def\!!twelvepoint {12pt} \def\!!fourteenpointfour {14.4pt} \ifx\z@\undefined \newdimen\zeropoint \else \let\zeropoint\z@ \fi \newcount\medcard \medcard\!!medcard % used in font module \newcount\maxcard \maxcard\!!maxcard % used in font module \ifx\thousandpoint\undefined \newdimen\thousandpoint \fi \thousandpoint=1000pt %D Variables are composed of a command specific tag and a user %D supplied variable (system constant). The first tag \type{ag} %D for instance is available as \type{\??ag} and expands to %D \type{@@ag} in composed variables. % vervallen : hd hr hm vt vr vm tr tn te br bm bo on om or \definesystemvariable {ab} % AlignedBoxes \definesystemvariable {ag} % AchterGrond \definesystemvariable {al} % ALinea's \definesystemvariable {am} % interActieMenu \definesystemvariable {an} % ANchor \definesystemvariable {as} % AlignmentSwitch \definesystemvariable {ba} % synchronisatieBAlk \definesystemvariable {be} % startstop (BeginEnd) \definesystemvariable {bj} % BlokJe \definesystemvariable {bk} % Blokken (floats) \definesystemvariable {bl} % BLanko \definesystemvariable {bg} % BleedinG \definesystemvariable {bo} % BlankO (definitions) \definesystemvariable {bs} % SelecteerBlokken \definesystemvariable {bt} % BuTton \definesystemvariable {bu} % BUffer \definesystemvariable {bv} % Brieven \definesystemvariable {by} % Per \definesystemvariable {cb} % CollectBox \definesystemvariable {cc} % Comment \definesystemvariable {ci} % CItaat \definesystemvariable {cl} % kleur (CoLor setup) \definesystemvariable {cn} % CollumN \definesystemvariable {co} % COmbinaties \definesystemvariable {cp} % CliP \definesystemvariable {cr} % kleur (ColoR) \definesystemvariable {cs} % kleur (ColorSeparation \definesystemvariable {cv} % ConVersie \definesystemvariable {da} % DAte \definesystemvariable {dc} % DroppedCaps \definesystemvariable {dd} % DoorDefinieren \definesystemvariable {de} % DEel \definesystemvariable {dl} % DunneLijnen \definesystemvariable {dn} % DoorNummeren \definesystemvariable {do} % DefinieerOpmaak \definesystemvariable {du} % DUmmy \definesystemvariable {ds} % DoorSpringen \definesystemvariable {ef} % ExternFiguur \definesystemvariable {ec} % EnCoding \definesystemvariable {en} % ENvironments \definesystemvariable {ep} % ExternfiguurPreset \definesystemvariable {er} % external resources \definesystemvariable {ex} % ExterneFiguren \definesystemvariable {ht} % HiddenText \definesystemvariable {fc} % FramedContent \definesystemvariable {fd} % FielD \definesystemvariable {ff} % FontFile \definesystemvariable {fg} % FiGuurmaten \definesystemvariable {fi} % FIle \definesystemvariable {fl} % Floats \definesystemvariable {fm} % ForMules \definesystemvariable {fp} % FilegroeP \definesystemvariable {fr} % ForM \definesystemvariable {fs} % FileSynonym \definesystemvariable {ft} % FonTs \definesystemvariable {hs} % HSpace \definesystemvariable {ia} % Interactie \definesystemvariable {ib} % InteractieBalk \definesystemvariable {id} % Index \definesystemvariable {ig} % ItemGroup \definesystemvariable {ih} % InHoudsopgave \definesystemvariable {ii} % stelIndexIn \definesystemvariable {il} % stelInvulRegelsin \definesystemvariable {im} % InMarge \definesystemvariable {in} % INspringen \definesystemvariable {ip} % InsertPages \definesystemvariable {is} % Items \definesystemvariable {it} % stelInTerliniein \definesystemvariable {iv} % stelInvulLijnenin \definesystemvariable {ka} % KAntlijn \definesystemvariable {kd} % KaDerteksten \definesystemvariable {kj} % KopJes (floats) \definesystemvariable {kk} % Kapitalen \definesystemvariable {kl} % KoLommen \definesystemvariable {km} % KenMerk \definesystemvariable {ko} % KOp(pen) \definesystemvariable {kp} % KopPelteken \definesystemvariable {kr} % KoRps \definesystemvariable {ks} % KolomSpan \definesystemvariable {kt} % KonTakten \definesystemvariable {kw} % KontaktWaarde \definesystemvariable {la} % LAnguage \definesystemvariable {lb} % LaBels \definesystemvariable {ld} % LegenDa \definesystemvariable {le} % LinetablE \definesystemvariable {lg} % taal (LanGuage) \definesystemvariable {li} % LIjst \definesystemvariable {ll} % Layers \definesystemvariable {lx} % LayerteXt \definesystemvariable {ln} % LijNen \definesystemvariable {lo} % LOgos \definesystemvariable {lt} % LiTeratuur \definesystemvariable {ly} % LaYout \definesystemvariable {ma} % MargeAchtergrond \definesystemvariable {mb} % MargeBlokken \definesystemvariable {mg} % Metapost paGe \definesystemvariable {mk} % MarKering \definesystemvariable {mt} % inline MaTh \definesystemvariable {mo} % Math Options \definesystemvariable {nm} % Nummering \definesystemvariable {np} % NaastPlaatsen \definesystemvariable {nr} % Nummeren \definesystemvariable {of} % OFfset \definesystemvariable {oi} % OmlijndInstellingen \definesystemvariable {ol} % OmLijnd \definesystemvariable {on} % ONderstreep \definesystemvariable {oo} % OpsOmmingen \definesystemvariable {op} % OPsomming \definesystemvariable {or} % OtpfilteR \definesystemvariable {os} % OffSet \definesystemvariable {ot} % OTpsequence \definesystemvariable {ov} % OVerlay \definesystemvariable {ox} % OffsetBox \definesystemvariable {pa} % PAlet \definesystemvariable {pb} % PuBlicatie \definesystemvariable {pc} % PageComment \definesystemvariable {pe} % PagEhandler \definesystemvariable {pf} % ProFiel \definesystemvariable {pg} % KoppelPagina \definesystemvariable {ph} % ParagrapH \definesystemvariable {pl} % PLaats \definesystemvariable {pn} % PaginaNummer \definesystemvariable {pp} % PaPier \definesystemvariable {pr} % PRogrammas \definesystemvariable {ps} % PoSitioneren \definesystemvariable {pt} % PageshifT \definesystemvariable {rf} % ReFereren \definesystemvariable {rg} % ReGel \definesystemvariable {rl} % ReferentieLijst \definesystemvariable {rn} % RegelNummer \definesystemvariable {ro} % ROteren \definesystemvariable {rr} % linenotes \definesystemvariable {rs} % RaSters \definesystemvariable {rt} % RoosTers \definesystemvariable {rv} % ReserVeerfiguur \definesystemvariable {sa} % ScAle \definesystemvariable {sb} % SectieBlok \definesystemvariable {sc} % SCherm \definesystemvariable {sd} % SounD \definesystemvariable {se} % SEctie \definesystemvariable {sf} % SpeciFics \definesystemvariable {sg} % SpacinG \definesystemvariable {sh} % ShapeText \definesystemvariable {si} % SplIt \definesystemvariable {sk} % SectieKop \definesystemvariable {sl} % SmalLer \definesystemvariable {sm} % SynonieMen \definesystemvariable {sn} % SubNummer \definesystemvariable {so} % SOrteren \definesystemvariable {sp} % SelecteerPapier \definesystemvariable {ss} % Symbool \definesystemvariable {st} % STickers \definesystemvariable {su} % SetUp \definesystemvariable {sv} % SysteemVariabelen \definesystemvariable {sy} % SYnchronisatie \definesystemvariable {ta} % TAb \definesystemvariable {tb} % TekstBlokken \definesystemvariable {td} % TextbackgrounDs \definesystemvariable {te} % TEmplate \definesystemvariable {tf} % TypeFace \definesystemvariable {tg} % Tex paGe \definesystemvariable {ti} % TabelInstellingen \definesystemvariable {tk} % Teksten \definesystemvariable {tl} % TekstLijnen \definesystemvariable {tm} % TypesynonyM \definesystemvariable {tp} % TyPen \definesystemvariable {ts} % TypeScript \definesystemvariable {tt} % TabulaTe \definesystemvariable {ty} % TYpe \definesystemvariable {uc} % Unicode \definesystemvariable {ui} % UItvoer \definesystemvariable {ur} % URl \definesystemvariable {ve} % VErsie \definesystemvariable {vn} % VoetNoten \definesystemvariable {vt} % VerTical \definesystemvariable {wr} % WitRuimte \definesystemvariable {xf} % XML File \definesystemvariable {xp} % XML Processing \definesystemvariable {xy} % schaal \definesystemvariable {za} % ZetspiegelAanpassing %D Next we define some language independant one letter %D variables and keywords. \defineinterfaceconstant {x} {x} % x offset \defineinterfaceconstant {y} {y} % y offset \defineinterfaceconstant {w} {w} % width \defineinterfaceconstant {h} {h} % height \defineinterfaceconstant {s} {s} % size \defineinterfaceconstant {t} {t} % title \defineinterfaceconstant {c} {c} % creator \defineinterfaceconstant {e} {e} % extension \defineinterfaceconstant {f} {f} % file \defineinterfaceconstant {a} {a} % kunnen weg \defineinterfaceconstant {b} {b} % kunnen weg \defineinterfaceconstant {c} {c} % kunnen weg \defineinterfaceconstant {d} {d} % kunnen weg \defineinterfaceconstant {e} {e} % kunnen weg \defineinterfaceconstant {s} {s} \defineinterfaceconstant {r} {r} \defineinterfaceconstant {g} {g} \defineinterfaceconstant {b} {b} \defineinterfaceconstant {c} {c} \defineinterfaceconstant {m} {m} \defineinterfaceconstant {y} {y} \defineinterfaceconstant {k} {k} \defineinterfaceconstant {a} {a} % alternative \defineinterfaceconstant {t} {t} % transparency \defineinterfaceconstant {p} {p} % percentage \defineinterfaceconstant {t} {t} \defineinterfaceconstant {h} {h} \defineinterfaceconstant {b} {b} \defineinterfaceconstant {rgb} {rgb} \defineinterfacevariable {rgb} {rgb} \defineinterfaceconstant {cmyk} {cmyk} \defineinterfacevariable {cmyk} {cmyk} \defineinterfaceconstant {mp} {mp} \defineinterfacevariable {mp} {mp} \defineinterfacevariable {s} {s} \defineinterfacevariable {a} {a} \defineinterfacevariable {b} {b} \defineinterfacevariable {c} {c} \defineinterfacevariable {d} {d} %D The names of files and their extensions are fixed. %D \CONTEXT\ uses as less files as possible. Utility files can %D be recognized by the first two characters of the extension: %D \type{tu}. \definefileconstant {utilityfilename} {texutil} \definefileconstant {blockextension} {tub} \definefileconstant {figureextension} {tuf} \definefileconstant {inputextension} {tui} \definefileconstant {outputextension} {tuo} % tup for previous run \definefileconstant {optionextension} {top} \definefileconstant {temporaryextension} {tmp} \definefileconstant {patternsextension} {pat} \definefileconstant {hyphensextension} {hyp} \definefileconstant {fontmapextension} {map} %D These files are loaded at start||up. They may contain system %D specific setups (or calls to other files), old macro's, to %D garantee compatibility and new macro's noy yet present in %D the format. \definefileconstant {sysfilename} {cont-sys} \definefileconstant {oldfilename} {cont-old} \definefileconstant {newfilename} {cont-new} \definefileconstant {filfilename} {cont-fil} \definefileconstant {modfilename} {cont-mod} %D The next two files specify user settings as well as %D \TEXEXEC\ settings when generating a format. \definefileconstant {usrfilename} {cont-usr} \definefileconstant {fmtfilename} {cont-fmt} %D The setup files for the language, font, color and special %D subsystems have a common prefix. This means that we have at %D most three characters for unique filenames. \definefileconstant {colorprefix} {colo-} \definefileconstant {encodingprefix} {enco-} \definefileconstant {filterprefix} {filt-} \definefileconstant {fontprefix} {font-} \definefileconstant {handlingprefix} {hand-} \definefileconstant {javascriptprefix} {java-} \definefileconstant {languageprefix} {lang-} \definefileconstant {mathprefix} {math-} \definefileconstant {metapostprefix} {meta-} \definefileconstant {regimeprefix} {regi-} \definefileconstant {specialprefix} {spec-} \definefileconstant {symbolprefix} {symb-} \definefileconstant {typeprefix} {type-} \definefileconstant {xtagprefix} {xtag-} \definefileconstant {moduleprefix} {m-} \definefileconstant {styleprefix} {s-} \definefileconstant {xstyleprefix} {x-} \definefileconstant {privateprefix} {p-} \definefileconstant {thirdprefix} {t-} %D \CONTEXT\ follows different strategies for finding files. %D The macros that are responsible for this 'clever' searching %D make use of two (very important) path specifiers. \definefileconstant {pathseparator} {/} \definefileconstant {currentpath} {.} \definefileconstant {parentpath} {..} %D The way fonts are defined and called upon is language %D independant. We follow the scheme laid down by Knuth in %D Plain \TEX. We'll explain their meaning later. \defineinterfaceconstant {tf} {tf} \defineinterfaceconstant {bf} {bf} \defineinterfaceconstant {bs} {bs} \defineinterfaceconstant {bi} {bi} \defineinterfaceconstant {sl} {sl} \defineinterfaceconstant {it} {it} \defineinterfaceconstant {sc} {sc} \defineinterfaceconstant {rm} {rm} \defineinterfaceconstant {ss} {ss} \defineinterfaceconstant {tt} {tt} \defineinterfaceconstant {hw} {hw} \defineinterfaceconstant {cg} {cg} \defineinterfaceconstant {os} {os} \defineinterfaceconstant {mm} {mm} \defineinterfaceconstant {i} {i} \defineinterfaceconstant {nn} {nn} \defineinterfaceconstant {x} {x} \defineinterfaceconstant {xx} {xx} \defineinterfaceconstant {em} {em} \defineinterfaceconstant {mi} {mi} \defineinterfaceconstant {sy} {sy} \defineinterfaceconstant {ex} {ex} \defineinterfaceconstant {mr} {mr} \defineinterfaceconstant {ma} {ma} \defineinterfaceconstant {mb} {mb} \defineinterfaceconstant {mc} {mc} %D For figure inclusion we need: \defineinterfaceconstant {tif} {tif} \defineinterfaceconstant {eps} {eps} \defineinterfaceconstant {mps} {mps} \defineinterfaceconstant {jpg} {jpg} \defineinterfaceconstant {pdf} {pdf} \defineinterfaceconstant {png} {png} \defineinterfaceconstant {avi} {avi} \defineinterfaceconstant {mov} {mov} \defineinterfaceconstant {tex} {tex} \defineinterfaceconstant {tmp} {tmp} %D A careful reader will have noticed that in the module %D \type{mult-ini} we defined \type{\selectinterface}. We were %D not yet able to actually select an interface, because we %D still had to define the constants and variables. Now we've %D done so, selection is permitted. \selectinterface %D And only after this selection is done, we can define %D messages, otherwise the default language is in use. \ifinterfacetranslation \else \startmessages dutch library: check title: controle 1: '=' ontbreekt of zonder {} na '--' in regel -- 2: -- argument(en) verwacht in regel -- 3: -- -- vervangt een macro, gebruik HOOFDLETTERS! \stopmessages \startmessages english library: check title: check 1: missing or ungrouped '=' after '--' in line -- 2: -- argument(s) expected in line -- 3: -- -- replaces a macro, use CAPITALS! \stopmessages % 1: to be adapted \startmessages german library: check title: check 1: Fehlendes '=' nach '--' in Zeile -- 2: -- Argument(e) in Zeile -- erwartet 3: -- -- ersetzt ein Makro, verwende VERSALIEN! \stopmessages \startmessages czech library: check title: kontrola 1: postradam '=' po '--' na radku -- 2: ocekavam -- argument(y) na radku -- 3: -- -- nahrazuje makro, uzijte VERZALKY! \stopmessages \startmessages italian library: check title: controllo 1: '=' mancante o non raggruppato dopo '--' alla riga -- 2: -- argomento/i attesi alla riga -- 3: -- -- sostituisce una macro, usare le MAIUSCOLE! \stopmessages \startmessages norwegian library: check title: kontroll 1: manglende '=' etter '--' i linje -- 2: -- argument forventet i linje -- 3: -- -- overskygger en makro, bruk STORE BOKSTAVER! \stopmessages \startmessages romanian library: check title: verificari 1: lipseste '=' dupa '--' in linia -- 2: argumentul(ele) -- sunt asteptate in linia -- 3: -- -- inlocuieste un macro, folositi MAJUSCULE! \stopmessages \fi %D Ok, here are some more, because we've got ouselves some %D extensions to \CONTEXT. \definemessageconstant {addresses} \definemessageconstant {documents} \protect \endinput
Attachment:
pgpQ3n_0YcE8y.pgp
Description: PGP signature