Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Deutsche Umlaute in Plain-TeX Dokument

191 views
Skip to first unread message

Christian Rank

unread,
Aug 5, 1998, 3:00:00 AM8/5/98
to
Hallo,

ich suche nach einer Möglichkeit, wie man direkt deutsche
Umlaute (Windows/ANSI) in Plain-TeX (nicht LaTeX) Dokumenten
verwenden kann. Die Package 'inputenc' ist ja nur für LaTeX
gedacht.

Für Hinweise dankbar,
Christian

Stephan

unread,
Aug 5, 1998, 3:00:00 AM8/5/98
to


> ich suche nach einer Möglichkeit, wie man direkt deutsche
> Umlaute (Windows/ANSI) in Plain-TeX (nicht LaTeX) Dokumenten
> verwenden kann. Die Package 'inputenc' ist ja nur für LaTeX
> gedacht.

Hallo Christian,

ich habe mit der brutalen Methode

\catcode`\ä=\active
\catcode`\ü=\active
\catcode`\ö=\active
\catcode`\Ö=\active
\catcode`\Ü=\active
\catcode`\Ä=\active
\catcode`\ß=\active

\defä{\"a}
\defü{\"u}
\defö{\"o}
\defÄ{\"A}
\defÜ{\"U}
\defÖ{\"O}
\defß{\ss{}}

ganz gute Erfahrungen gemacht.

Gruß,
Stephan


Louis Vosloo

unread,
Aug 5, 1998, 3:00:00 AM8/5/98
to
Christian Rank wrote:

> ich suche nach einer Möglichkeit, wie man direkt deutsche
> Umlaute (Windows/ANSI) in Plain-TeX (nicht LaTeX) Dokumenten
> verwenden kann. Die Package 'inputenc' ist ja nur für LaTeX
> gedacht.

Manche TeX Systeme k"onnen TeX's xchr[]/xord[] Mechanism verwenden.
Manche TeX System k"onnen eine Datei verwenden die sagt wie
die Buchstaben umgewandelt werden m"ussen (z. B. Ü -> \"U).
Man kann dass auch mit `active characters' machen (sehe angeh"angt)
Am einfachsten ist es wenn die Schrift dies Buchstaben schon hat
(also nicht CM, oder OT1 Kodierung).

Here is etwas f"ur DOS code page 850. Mann kann dass
f"ur Windows ANSI umwandeln:

% META_850.TEX keyboard replacement file for DOS code page 850

% Makes `meta' characters active and replaces them with suitable TeX macros

% A source file using DOS code page 850 can then be read in even if the fonts
% use a different encoding or if they do not contain ready-made accented chars

\catcode128=\active \def^^80{\c{C}}
\catcode129=\active \def^^81{\"u}
\catcode130=\active \def^^82{\'e}
\catcode131=\active \def^^83{\^a}
\catcode132=\active \def^^84{\"a}
\catcode133=\active \def^^85{\`a}
\catcode134=\active \def^^86{{\aa}}
\catcode135=\active \def^^87{\c{c}}
\catcode136=\active \def^^88{\^e}
\catcode137=\active \def^^89{\"e}
\catcode138=\active \def^^8a{\`e}
\catcode139=\active \def^^8b{\"\i}
\catcode140=\active \def^^8c{\^\i}
\catcode141=\active \def^^8d{\`\i}
\catcode142=\active \def^^8e{\"A}
\catcode143=\active \def^^8f{{\AA}}
\catcode144=\active \def^^90{\'E}
\catcode145=\active \def^^91{{\ae}}
\catcode146=\active \def^^92{{\AE}}
\catcode147=\active \def^^93{\^o}
\catcode148=\active \def^^94{\"o}
\catcode149=\active \def^^95{\`o}
\catcode150=\active \def^^96{\^u}
\catcode151=\active \def^^97{\`u}
\catcode152=\active \def^^98{\"y}
\catcode153=\active \def^^99{\"O}
\catcode154=\active \def^^9a{\"U}
\catcode155=\active \def^^9b{{\o}}
% \catcode156=\active % sterling
\catcode157=\active \def^^9d{{\O}}
% \catcode158=\active % multiple
% \catcode159=\active % florin
\catcode160=\active \def^^a0{\'a}
\catcode161=\active \def^^a1{\'\i}
\catcode162=\active \def^^a2{\'o}
\catcode163=\active \def^^a3{\'u}
\catcode164=\active \def^^a4{\~n}
\catcode165=\active \def^^a5{\~N}
% \catcode166=\active
% \catcode167=\active
\catcode168=\active \def^^a8{?`}
% \catcode169=\active % registered
% \catcode170=\active % logicalnot
% \catcode171=\active
% \catcode172=\active
\catcode173=\active \def^^ad{!`}
\catcode174=\active \def^^ae{<<}
\catcode175=\active \def^^af{>>}

\catcode181=\active \def^^b5{\'A}
\catcode182=\active \def^^b6{\^A}
\catcode183=\active \def^^b7{\`A}
\catcode184=\active \def^^b8{{\copyright}}

% \catcode189=\active % cent
% \catcode190=\active % yen

\catcode198=\active \def^^d6{\~a}
\catcode199=\active \def^^d7{\~A}

% \catcode207=\active % currency

\catcode208=\active \def^^d0{{\dh}}
\catcode209=\active \def^^d1{{\DH}}
\catcode210=\active \def^^d2{\^E}
\catcode211=\active \def^^d3{\"E}
\catcode212=\active \def^^d4{\`E}
\catcode213=\active \def^^d5{{\i}}
\catcode214=\active \def^^d6{\'I}
\catcode215=\active \def^^d7{\^I}
\catcode216=\active \def^^d8{\"I}

% \catcode221=\active % brokenbar

\catcode222=\active \def^^de{\`I}

\catcode224=\active \def^^e0{\'O}
\catcode225=\active \def^^e1{{\ss}}
\catcode226=\active \def^^e2{\^O}
\catcode227=\active \def^^e3{\`O}
\catcode228=\active \def^^e4{\~o}
\catcode229=\active \def^^e5{\~O}

\catcode230=\active \def^^e6{$\mu$}

\catcode231=\active \def^^e7{{\th}}
\catcode232=\active \def^^e8{{\TH}}
\catcode233=\active \def^^e9{\'U}
\catcode234=\active \def^^ea{\^U}
\catcode235=\active \def^^eb{\`U}
\catcode236=\active \def^^ec{\'y}
\catcode237=\active \def^^ed{\'Y}

% \catcode238=\active % macron
% \catcode239=\active % acute

% \catcode244=\active % paragraph
% \catcode245=\active % section
% \catcode246=\active % divide

% \catcode247=\active % cedilla
% \catcode248=\active % degree
% \catcode249=\active % dieresis

Andreas Schwab

unread,
Aug 5, 1998, 3:00:00 AM8/5/98
to
"Christian Rank" <ra...@winf.uni-passau.de> writes:

|> Hallo,


|>
|> ich suche nach einer Möglichkeit, wie man direkt deutsche
|> Umlaute (Windows/ANSI) in Plain-TeX (nicht LaTeX) Dokumenten
|> verwenden kann. Die Package 'inputenc' ist ja nur für LaTeX
|> gedacht.

\catcode`\ä = \active \defä{\"a}
% etc.

--
Andreas Schwab "And now for something
sch...@issan.informatik.uni-dortmund.de completely different"
sch...@gnu.org

Ulf Landscheid

unread,
Aug 6, 1998, 3:00:00 AM8/6/98
to
Zum Thema "Umlaute in PlainTeX verwenden":

Man kann die Umlaute auch aktiv machen und dann über eine \chardef-Anweisung
direkt die Zeichennummer des Buchstabens im Zeichensatz angeben. Wenn man
z.B. mit den ec-Fonts arbeitet, sehen die Definitionen so aus:

% Fonts

\font\tenrm=ecrm1000
\font\tenbf=ecbx1000
\font\tenit=ecti1000

\font\eightrm=ecrm0800
\font\eightbf=ecbx0800
\font\eightit=ecti0800

\font\sixrm=ecrm0600
\font\sixbf=ecbx0600
\font\sixit=ecti0600

% Zur Direkteingabe von Umlauten, ß und §

\catcode`\ä=\active
\catcode`\ö=\active
\catcode`\ü=\active


\catcode`\Ä=\active
\catcode`\Ö=\active
\catcode`\Ü=\active

\catcode`\ß=\active
\catcode`\§=\active
\chardefä=228
\chardefö=246
\chardefü=252
\chardefÄ=196
\chardefÖ=214
\chardefÜ=220
\chardefß=255
\chardef§=159

\tenrm

--

Ulf


Andreas Scherer

unread,
Aug 6, 1998, 3:00:00 AM8/6/98
to
Christian Rank wrote:
>
> Hallo,
>
> ich suche nach einer Möglichkeit, wie man direkt deutsche
> Umlaute (Windows/ANSI) in Plain-TeX (nicht LaTeX) Dokumenten
> verwenden kann. Die Package 'inputenc' ist ja nur für LaTeX
> gedacht.
Vor mittlerweile fast ewigen Zeiten habe ich im Zuge der Portierung von
CWEB mehrere kleine Makros geschrieben, die verschiedene Codepages auch
für plainTeX mappen. Für ANSI/ISO war's damals wohl 'ecma94.sty', dazu
gab's noch dos437/850 und mac8. Zu finden in

ftp://ftp.dante.de/tex-archive/web/c_cpp/cwebbin/

Zumindest auf dem Amiga und unter Linux hat "\input ecma94.sty" stets
gute Dienste geleistet.

Gruß,

-- Andreas

Louis Vosloo

unread,
Aug 6, 1998, 3:00:00 AM8/6/98
to
Ulf Landscheid wrote:

> Man kann die Umlaute auch aktiv machen und dann über eine \chardef-Anweisung
> direkt die Zeichennummer des Buchstabens im Zeichensatz angeben. Wenn

> % Zur Direkteingabe von Umlauten, ß und §
>
> \catcode`\ä=\active
> \catcode`\ö=\active
> \catcode`\ü=\active
> \catcode`\Ä=\active
> \catcode`\Ö=\active
> \catcode`\Ü=\active
> \catcode`\ß=\active
> \catcode`\§=\active
> \chardefä=228
> \chardefö=246
> \chardefü=252
> \chardefÄ=196
> \chardefÖ=214
> \chardefÜ=220
> \chardefß=255
> \chardef§=159

Besser ist es vielleicht wenn es f"ur irgend eine
`output encoding' arbeited.
Here is meta1252.tex f"ur Windows ANSI.

% META1252.TEX keyboard replacement file for Windows ANSI

% Makes `meta' characters active and replaces them with suitable TeX macros

% A source file using Windows ANSI can then be read in even if the fonts


% use a different encoding or if they do not contain ready-made accented chars

\catcode128=\active \def^^80{{\euro}} % Euro (may not exist in font)

\catcode130=\active \def^^82{,} % quotesinglebase (approximation)
\catcode131=\active \def^^83{{\it f}} % florin (approximation)
\catcode132=\active \def^^84{,,} % quotedoublebase (approximation)
\catcode133=\active \def^^85{...} % ellipsis (approximation)
\catcode134=\active \def^^86{{\dag}} % dagger
\catcode135=\active \def^^87{{\ddag}} % daggerdbl
\catcode136=\active \def^^88{\^} % circumflex accent
\catcode137=\active \def^^89{{\perthousand}} % (may not exist in font)
\catcode138=\active \def^^8a{\v S} % Scaron
\catcode139=\active \def^^8b{$<$} % guilsinglleft (approximation)
\catcode140=\active \def^^8c{{\OE}}

\catcode142=\active \def^^8e{\v Z} % Zcaron

\catcode145=\active \def^^91{`} % quoteleft
\catcode146=\active \def^^92{'} % quoteright
\catcode147=\active \def^^93{``} % quotedblleft (pseudo ligature)
\catcode148=\active \def^^94{''} % quotedblright (pseudo ligature)
\catcode149=\active \def^^95{{\bullet}}
\catcode150=\active \def^^96{--} % endash (pseudo ligature)
\catcode151=\active \def^^97{---} % emdash (pseudo ligature)
\catcode152=\active \def^^98{\~} % tilde accent
\catcode153=\active \def^^99{{\trademark}}
\catcode154=\active \def^^9a{\v s} % scaron
\catcode155=\active \def^^9b{$>$} % guilsinglright (approximation)
\catcode156=\active \def^^9c{{\oe}}

\catcode158=\active \def^^9e{\s z} % zcaron
\catcode159=\active \def^^9f{\"Y} % Ydieresis
\catcode160=\active \def^^a0{ } % space, nbspace
\catcode161=\active \def^^a1{!`} % exclamdown
\catcode162=\active \def^^a2{c} % cent (approximation)
\catcode163=\active \def^^a3{{\pounds}} % sterling
\catcode164=\active \def^^a4{o} % currency (approximation)
\catcode165=\active \def^^a5{Y} % Yen (approximation)
\catcode166=\active \def^^a6{|} % brokenbar (approximation)
\catcode167=\active \def^^a7{\S} % section
\catcode168=\active \def^^a8{\"} % dieresis accent
\catcode169=\active \def^^a9{{\copyright}}
\catcode170=\active \def^^aa{^{a}} % ordfeminine (approximation)
\catcode171=\active \def^^ab{$<<$} % guillemotleft (approximation)
\catcode172=\active \def^^ac{!} % logicalnot (gross approximation)
\catcode173=\active \def^^ad{-} % hyphen, sfthyphen
\catcode174=\active \def^^ae{{\registered}}
\catcode175=\active \def^^af{\=} % macron accent
\catcode176=\active \def^^b0{$^{\circ}$}
\catcode177=\active \def^^b1{${\pm}$} % plusminus
\catcode178=\active \def^^b2{$^{2}$} % twosuperior
\catcode179=\active \def^^b3{$^{3}$} % threesuperior
\catcode180=\active \def^^b4{\'} % acute accent
\catcode181=\active \def^^b5{$\mu$} % mu, micro
\catcode182=\active \def^^b6{{\P}} % paragraph
\catcode183=\active \def^^b7{.} % periodcentered (approximation)
\catcode184=\active \def^^b8{\c } % cedilla
\catcode185=\active \def^^b9{$^{1}$} % onesuperior
\catcode186=\active \def^^ba{$^{o}$} % ordmasculine
\catcode187=\active \def^^bb{$>>$} % guillemotright
\catcode188=\active \def^^bc{${1/4}$} % onequarter
\catcode189=\active \def^^bd{${1/2}$} % onehalf
\catcode190=\active \def^^be{${3/4}$} % threequarters
\catcode191=\active \def^^bf{?`} % questiondown
\catcode192=\active \def^^c0{\`A} % Agrave
\catcode193=\active \def^^c1{\'A} % Aacute
\catcode194=\active \def^^c2{\^A} % Acircumflex
\catcode195=\active \def^^c3{\"A} % Atilde
\catcode196=\active \def^^c4{\"A} % Adieresis
\catcode197=\active \def^^c5{{\AA}} % Aring
\catcode198=\active \def^^c6{{\AE}} % AE
\catcode199=\active \def^^c7{\c C} % Ccedilla
\catcode200=\active \def^^c8{\`E} % Egrave
\catcode201=\active \def^^c9{\'E} % Eacute
\catcode202=\active \def^^ca{\^E} % Ecircumflex
\catcode203=\active \def^^cb{\"E} % Edieresis
\catcode204=\active \def^^cc{\`I} % Igrave
\catcode205=\active \def^^cd{\'I} % Iacute
\catcode206=\active \def^^ce{\^I} % Icircumflex
\catcode207=\active \def^^cf{\"I} % Idieresis
\catcode208=\active \def^^d0{{\DH}} % Eth
\catcode209=\active \def^^d1{\~N} % Ntilde
\catcode210=\active \def^^d2{\`O} % Ograve
\catcode211=\active \def^^d3{\'O} % Oacute
\catcode212=\active \def^^d4{\^O} % Ocircumflex
\catcode213=\active \def^^d5{\~O} % Otilde
\catcode214=\active \def^^d6{\"O} % Odieresis
\catcode215=\active \def^^d7{$\times$} % multiply (approximation)
\catcode216=\active \def^^d8{{\O}} % Oslash
\catcode217=\active \def^^d9{\`U} % Ugrave
\catcode218=\active \def^^da{\'U} % Uacute
\catcode219=\active \def^^db{\^U} % Ucircumflex
\catcode220=\active \def^^dc{\"U} % Udieresis
\catcode221=\active \def^^dd{\'Y} % Yacute
\catcode222=\active \def^^de{{\TH}} % Thorn
\catcode223=\active \def^^df{{\ss}} % germandbls
\catcode224=\active \def^^e0{\`a} % agrave
\catcode225=\active \def^^e1{\'a} % aacute
\catcode226=\active \def^^e2{\^a} % acircumflex
\catcode227=\active \def^^e3{\~a} % atilde
\catcode228=\active \def^^e4{\"a} % adieresis
\catcode229=\active \def^^e5{{\aa}} % aring
\catcode230=\active \def^^e6{{\ae}} % ae
\catcode231=\active \def^^e7{\c c} % ccedilla
\catcode232=\active \def^^e8{\`e} % egrave
\catcode233=\active \def^^e9{\'e} % eacute
\catcode234=\active \def^^ea{\^e} % ecircumflex
\catcode235=\active \def^^eb{\"e} % edieresis
\catcode236=\active \def^^ec{\`i} % igrave
\catcode237=\active \def^^ed{\'i} % iacute
\catcode238=\active \def^^ee{\^i} % icircumflex
\catcode239=\active \def^^ef{\"i} % idieresis
\catcode240=\active \def^^f0{{\dh}} % eth
\catcode241=\active \def^^f1{\~n}} % ntilde
\catcode242=\active \def^^f2{\`o} % ograve
\catcode243=\active \def^^f3{\'o} % oacute
\catcode244=\active \def^^f4{\^o} % ocircumflex
\catcode245=\active \def^^f5{\~o} % otilde
\catcode246=\active \def^^f6{\"o} % odieresis
\catcode247=\active \def^^f7{$/$} % divide (approximation)
\catcode248=\active \def^^f8{{\o}} % oslash
\catcode249=\active \def^^f9{\`u} % ugrave
\catcode250=\active \def^^fa{\'u} % uacute
\catcode251=\active \def^^fb{\^u} % ucircumflex
\catcode252=\active \def^^fc{\"u} % udieresis
\catcode253=\active \def^^fd{\'y} % yacute
\catcode254=\active \def^^fe{{\th}} % thorn
\catcode255=\active \def^^ff{\"y} % ydieresis

% Y&Y, Inc. 45 Walden Street Concord, MA 01742 USA
% mailto:sa...@YandY.com mailto:sup...@YandY.com http://www.YandY.com

0 new messages