LDP/LDP/howto/linuxdoc/German-HOWTO.sgml

1722 lines
57 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype Linuxdoc system>
<!-- This document contains ISO-latin1 characters and must be
formatted with the -l option. Otherwise it will be nearly
unusable. -->
<article>
<title>German HOWTO
<author>Winfried Trümper <tt/&lt;winni@xpilot.org&gt;/
<date>v1.6, 19 March 1997
<abstract>
Dieses Dokument enthält Tips und Informationen für deutschsprachige
Linux-Benutzer. [Note to English readers: this document explains the
German-specific aspects of Linux.]
</abstract>
<toc>
<sect>Über das German-HOWTO
<p>
<sect1>Benutzung auf eigene Gefahr
<p>
Text, Abbildungen und Programme in diesem HOWTO wurden mit großer
Sorgfalt erarbeitet. Dennoch sind Fehler nicht ganz auszuschließen.
Aus diesem Grund sind die im vorliegenden HOWTO enthaltenen Angaben
mit keiner Verpflichtung oder Garantie irgendeiner Art
verbunden. Kurz: Benutzung auf eigene Gefahr.
<sect1>Zielgruppe
<p>
Das German-HOWTO wendet sich an Linux-Benutzer, deren
Linux-Installation nicht oder nur teilweise an "deutsche"
Begebenheiten angepaßt ist. Die Forderung der Benutzer sollte
natürlich sein, daß alle Linux-Distributionen länderspezifische
Einstellungen von sich aus berücksichtigen. Schließlich ist dies der
Zweck der Distributionen: anhand einfacher Informationen das System
weitmöglichst zu konfigurieren, ohne daß der Benutzer erst Guru werden
muß.
Kurz: würden alle Distributionen ihre Hausaufgaben machen, wäre diese
HOWTO erheblich kürzer.
<sect1>Thematischer Umfang
<p>
Dieses HOWTO beschränkt sich ausschließlich auf die Beschreibung der
für Deutschland spezifischen Konfiguration von Linux und seinen
Programmen.
Es wird weder eine allgemeine deutsche Einführung in Linux gegeben,
noch wird die vorhandene Original-Dokumentation durch dieses HOWTO
überflüssig.
<sect2>Was ist neu in dieser Version?
<p>
<sect3>Version 1.4
<p>
Korrekturen an 1.3.
<sect3>Version 1.3
<p>
Komplette Neufassung des HOWTOs. Jetzt auch ausdrücklich für den
gesamten deutschsprachigen Raum.
<sect3>Version 1.2
<p>
?
<sect3>Version 1.1
<p>
Konvertierung in das Format linuxdoc-sgml.
<sect1>Verfügbarkeit
<p>
Dieses HOWTO ist offizieller Teil des `Linux Documentation Projects'
(LDP) und somit wie alle anderen Dokumente des LPD erhältlich. Nähere
Informationen findet man unter den URLs
<quote>
<url url="http://www.jura.uni-sb.de/LDP/"><p>
<url url="http://www.uni-paderborn.de/Linux/mdw/">
</quote>
oder im Verzeichnis <tt>/usr/doc/HOWTO/</tt> auf der eigenen Festplatte.
<sect1>Rückkopplung
<p>
Korrekturen von Tippfehlern und Verbesserungsvorschläge direkt an mich
schicken: <tt/winni@xpilot.org/.
Einstellungen aus MAKEFILEs nehme ich nicht mehr entgegen: sie sind
direkt an den Hersteller der Linux-Distribution zu richten. Wo
kämen wir hin, wenn das German HOWTO zur allgemeinen
Sammelstelle für Bug-Fixes würde?
Man verschone mich mit über das HOWTO hinausgehende Fragen wie
z.B. `Warum stürzt ispell ab?'. Ich stehe aus gutem Grund
<bf/nicht/ auf der Liste der deutschen Linux-Unterstützer und
beantworte auch keine Fragen per e-mail.
<sect1>Urheberrechte
<p>
Copyright (1994,1995,1996,1997) Winfried Trümper <tt/&lt;winni@xpilot.org&gt;/
Das German-HOWTO darf im ganzen oder teilweise vervielfältigt und
vertrieben werden, sowohl in gedruckter als auch in elektronischer
Form, solange dieses Copyright beibehalten wird. Kommerzieller
Vertrieb ist in diesem Sinne ausdrücklich erlaubt, solange höchstens
(anteilige) Kosten für die Datenträger berechnet werden.
Note to English readers:
The German-HOWTO may be reproduced and distributed in whole or in
part, in any medium physical or electronic, as long as the above
copyright notice is retained on all copies. Commercial redistribution
under the GPL is allowed and encouraged.
<sect1>Danksagung
<p>
Folgende Personen haben durch Vorschläge am German-HOWTO mitgewirkt:
<tscreen><verb>
Bernhard Aceman &lt;a2607425@athena.rrz.Uni-Koeln.DE&gt;
Andreas Bagge &lt;Andreas_Bagge@h2.maus.de&gt;
Andries Brouwer &lt;Andries.Brouwer@cwi.nl&gt;
Karl Brodowsky &lt;bk1@aixcomp2.urz.uni-heidelberg.de&gt;
Bernhard Buettner &lt;ben@dl6rai.muc.de&gt;
Gert Doering &lt;gert@greenie.muc.de&gt;
Karl Eichwalder &lt;ke@ke.central.de&gt;
David Frey &lt;David.Frey@eos.lugs.ch&gt;
Jochen Hein &lt;jochen.hein@delphi.central.de&gt;
Michael Hinz &lt;michael@fagmed.uit.no&gt;
Ulli Horlacher &lt;framstag@belwue.de&gt;
&dquot;Markus G. Kuhn&dquot; &lt;kuhn@cs.purdue.edu&gt;
Detlef Lannert &lt;lannert@uni-duesseldorf.de&gt;
Anselm Lingnau &lt;lingnau@tm.informatik.uni-frankfurt.de&gt;
Nat Makarevitch &lt;nat@nataa.frmug.fr.net&gt;
Sebastian Matschke
Frerk Meyer &lt;frerk@educat.hu-berlin.de&gt;
Reiner Miericke &lt;reiner@schildi.xnc.com&gt;
Uwe Münch &lt;muench@ph-cip.uni-koeln.de&gt;
Nils Naumann &lt;naumann@unileoben.ac.at&gt;
Danilo Rene Neuber &lt;daneuber@sbox.tu-graz.ac.at&gt;
Sven Neuhaus &lt;sven%fuzzy@fuzzy.ping.de&gt;
Thomas Ploss &lt;plossts@cip01.mathematik.uni-stuttgart.de&gt;
Roland Rosenfeld &lt;roland@spinnaker.rhein.de&gt;
Sven Rudolph &lt;sr1@irz301.inf.tu-dresden.de&gt;
Dietrich Schmidt &lt;diet@sfb256.iam.uni-bonn.de&gt;
Ingo Schroeck &lt;ioschroe@track.informatik.uni-stuttgart.de&gt;
Juergen Steiner &lt;js@barbar.augusta.de&gt;
Guenter Stueck &lt;guenter@gst0hb.north.de&gt;
Martin Schulze &lt;joey@finlandia.infodrom.north.de&gt;
Jan Vroonhof &lt;vroonhof@math.ethz.ch&gt;
</verb></tscreen>
<sect>Rüstzeug und generelle Bemerkungen
<p>
<sect1>Warum sind deutsche Anpassungen notwendig?
<p>
Linux wird von einer weltweiten Gemeinde von Hackern im Internet
entwickelt. Obwohl Linux ursprünglich aus Finnland kommt, ist Englisch
gemeinsame Sprache und Ausgangspunkt bei der Programmierung sind meist
amerikanische Standards (Papierformat &dquot;letter&dquot;, Zeichensatz
ohne Umlaute, usw.).
Gerade weil die Linux-Gemeinde weltweit operiert, sind
landesspezifische Einstellungen an vielen Stellen vorgesehen und
müssen lediglich aktiviert werden. Das ist schon alles.
<sect1>Notation
<p>
Tasten werden durch ihre Aufschrift in spitzen Klammern markiert.
<sect1>Empfohlene Begleitliteratur
<p>
Das Linux Configuration-HOWTO (to appear) erläutert die Handhabung der
erwähnten Konfigurationsdateien.
Im Linux Keyboard- und Keystroke-HOWTO findet man alle &dquot;Tricks&dquot; für
die Tastatur.
<sect1>Kurzes Glossar
<p>
<descrip>
<tag/ASCII/ ist ein 7-bit Zeichensatz und enthält 2^7 = 2*2*2*2*2*2*2
= 128 Zeichen, was gerade mal für a-z, A-Z, 0-9 und einige wichtige
Zeichen ausreicht. Das amerikanische Alphabet halt.
<tag/8-bit-clean/ ein 8-bit Zeichensatz umfaßt 128*2 = 256 Zeichen und
kann einige Sonderzeichen aufnehmen. Ist ein Programm in der Lage mit
einen 8-bit Zeichensatz umzugehen, so bezeichnet man es auch als
`8-bit clean'. Ist ein Programm nicht 8-bit clean, so erscheinen oft
anstelle der Umlaute `äöü' die Zeichen `dv|'.
Man beachte den subtilen Unterschied zwischen `8bit clean' und `localized':
Ein 8bit cleanes Programm braucht nichts von seiner Locale (und dem
verwendeten Zeichensatz!) zu wissen; es muss ``nur'' alle 256 Zeichen
bearbeiten können. Handkehrum kann ein Programm localized sein, aber
trotzdem nicht 8bit clean sein, da es gewisse Zeichen verschluckt
(z.B. alle Control-Codes).
<tag>`ISO-latin1' oder `ISO-8859-1'</tag>
Internationaler 8-bit Zeichensatz, enthält Umlaute und viele Sonderzeichen
für die `westeuropäischen' Sprachen. (Die osteuropäischen und weitere
haben andere Endziffern.)
<tag>Unicode</tag>
Unicode ist ein Standard, der Zeichen aus den unterschiedlichsten
Sprachen der Länder dieser Welt enthält. Dazu werden die
Zeichenpositionen in einem 32-bit Zeichensatz definiert, was noch
längst nicht abgeschlossen ist. Gängigere Zeichensätze (wie die
Zeichen der europäischen Sprachfamilien) sind als 16-bit Untergruppen
festgelegt, die in kompatibler Weise als einzelne 16-bit
Unicode-Zeichensätze verwendet werden können. Wenn hier von einem
<em/Unicode/-Zeichensatz die Rede ist, ist die 16-bit Untergruppe der
europäischen Sprachfamilien gemeint.
<tag/POSIX/
POSIX steht für `Portable Operating System Interface for UniX'. Normierte
Schnittstellenbeschreibung zu Kernel- und libc-Funktionen (POSIX.1)
resp. zu den Grundutilities (sh, ed, vi, awk, cut, ...) (POSIX.2).
<tag/Locale/
Ist die formale Beschreibung eines Teils der kulturellen Eigenheiten für
ein Land oder einen Spracheraum und die vom jeweiligen Programm benötigten
übersetzten Texte.
<tag/Internationalization/
Veränderung eines Programms zur Unterstützung mehrerer Sprachen.
<tag/i18n/
Abkürzung für <em/internationalization/. Da viele Leute zu
faul waren dieses lange Wort immer wieder auszuschreiben, wurden
einfach der erste und letzte Buchstabe belassen und der Zwischenraum
durch die Anzahl fehlender Buchstaben ersetzt.
<tag/Localisation/
Mit <em/localisation/ wird der Prozeß bezeichnt, einem bereits
internationalisierten Programm alle benötigten Informationen zur Verfügung
zu stellen, um den nationalen Besonderheiten, bezüglich der Sprache und
kulturellen Umfeld zu entsprechen. Kurz gesagt, i18n ist der eigentliche
Übersetzungsprozeß.
Der Nutzer kann das lokalisieren eines Programms erreichen, indem er
besonderen Umgebungsvariablen geeignete Werte zuweist, welche die zu
benutzende `locale' angeben.
<tag/l10n/
Abkürzung für <em/localization/, die wie i18n entstanden ist.
</descrip>
<sect>Menschen
<p>
<sect1>Benutzergruppen
<p>
In vielen Städten haben sich Linux-Benutzer zu sogenannten <em>Linux User
Groups</em> (LUG) zusammengetan. Diese Benutzergruppen sind offen für
jeden und halten regelmäßige Treffen ab. Sie sind der ideale Treffpunkt
für all diejenigen, die sich nicht nur im Cyberspace mit anderen Linuxern
austauschen wollen. Eine Übersicht befindet sich unter der URL
<quote>
<url url="http://www.schwaben.de/linux/LUG&lowbar;in&lowbar;de.html">
</quote>
<sect1>Linux-Supporter
<p>
Eine Liste mit Ansprechpartnern, die Anfängern in einem begrenzten Rahmen
kostenlosen Hilfestellung geben, findet sich unter der URL:
<quote>
<url url="http://localhost.ruhr.de/Linux-Support.html">
</quote>
Ziel ist die Verbreitung von Linux als Betriebssystem zu fördern.
<sect1>Online Chat (IRC)
<p>
Im IRC-Kanal &num;LinuxGER halten sich einige deutsche Linux-Aktivisten auf.
Nähere Informationen unter der URL:
<quote>
<url url="http://www.infodrom.north.de/Linux/LinuxGER/">
</quote>
<sect1>Newsgroups
<p>
Früher von mir als kostenlose Hotlines degradiert, habe ich die Newsgroups
in dieser Version anders eingeordnet. <em/Hotline/ hat immer den Klang
einer Stelle, bei der man auch ohne Lesen des Handbuchs Fragen stellen
kann. Obwohl einige Handbücher nun wirklich nicht das gelbe vom Ei sind,
sollte man die newgroups mit übermäßigen Fragen verschonen:
<quote>
<url url="news:de.comp.os.linux.hardware" name="de.comp.os.linux.hardware"><p>
<url url="news:de.comp.os.linux.misc" name="de.comp.os.linux.misc"><p>
<url url="news:de.comp.os.linux.x" name="de.comp.os.linux.x"><p>
<url url="news:de.comp.os.linux.networking" name="de.comp.os.linux.networking">
</quote>
Stattdessen sind die Newsgroup ein prima Forum, in denen man die nicht
ganz alltäglichen Dinge diskutieren kann.
<sect>Dokumentation<label id="Dokumentation">
<p>
<sect1>Deutsches Linux HOWTO Projekt (DLHP)
<p>
Das Deutsche Linux HOWTO Projekt beschäftigt sich mit der Übersetzung der
originalen Linux HOWTOs ins Deutsche. Unter der URL
<quote>
<url url="http://www.tu-harburg.de/~semb2204/dlhp/">
</quote>
kann man eine Liste aller übersetzten HOWTOs und nähere Informationen zum
Projekt abrufen.
<sect1>Bücher
<p>
Mittlerweile gibt es sehr viele deutschsprachige Bücher zu Linux,
weshalb ich die Übersicht aus diesem HOWTO herausgenommen habe.
Martin Schulze <tt/&lt;joey@finlandia.infodrom.north.de&gt;/ unterhält eine
Liste mit deutschen Büchern rund um Linux, die unter der URL:
<quote>
<url url="http://www.infodrom.north.de/Linux/Buecher/">
</quote>
erhältlich ist und die in der Newsgroup de.comp.os.linux.misc regelmäßig
gepostet wird.
<sect1>Deutschsprachige Manual-Pages
<p>
Eine Gruppe von Freiwilligen hat sich die Übersetzung der englischen
Manual-Pages vorgenommen. Obwohl bereits ein ansehnlicher Teil übersetzt
ist, werden weiterhin Übersetzer gesucht. Details unter der URL:
<quote>
<url url="http://www.Infodrom.North.DE/Linux/manpages-de/">
</quote>
<sect1>Diverses
<p>
<sect2>GNU emacs reference card
<p>
Eine deutsche Version der äußerst nützlichen Referenzkarte
zum Texteditor `emacs' findet man unter der URL:
<quote>
<url url="http://www.inf.tu-dresden.de/~sr1/projects/emacs-refcard/index.html">
</quote>
<sect2>Crash-Kurs Linux
<p>
Wer gerne knappe Bescheibungen mag, sollte einen Blick in den von mir
geschriebenen `Crash-Kurs Linux' werfen.
<quote>
<url url="http://www.uni-koeln.de/themen/linux/ckl/">
</quote>
<sect>Das System
<p>
<sect1>Konsole
<p>
Die Konsole ist die Tastatur und der Bildschirm eines Linux-Systems;
in der Regel also der VGA-Monitor plus Tastatur.
Linux täuscht den Programmen mehr als eine Konsole vor und der Benutzer
kann dann mittels Tastenkombination &lt;Alt-Ctrl-F1&gt; - &lt;Alt-Ctrl-F8&gt; zwischen
diesen hin- und herblenden. Die vorgetäuschten Konsolen nennt man
<em/virtuelle Konsolen/.
<tscreen><verb>
|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯| |¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
| Escape the |<-- setfont loadkeys -->|^1234567890ß 123 |
| Gates of hell. | | qwertzuiopü+ 567 |
| |=======+ +=======| asdfghjklöä# 789 |
| Use Linux. | | | | <yxcvbnm,.­ 0, |
| | | | |__________________|
|_________________| | |
MMM | |
MMMMMMMMM | | +---<---< Internet
| | |
+-------*-------------*------+ |
| \ / | | X11 ------+
| \ / | | | |
| Betriebssystemkern Linux | telnetd xterm |
Alt+Ctrl F1­F8 ----------------/ <­> | \\ /// |
als Schalter | / | \\ /// |
| / | \ +-------+· · ·+-------+ |
| / | \ | ptyp1 | | ptyef | |
|······+······+ · · · +······+·······+ · · +·······| |
| tty0 | tty1 | . . . | tty8 | ttyp1 | · · | ttyef | |
+------+------+ - - - +------+-------+ - - +-------+ |
| | ^ | |
bash emacs | less |
| |
`---------------------------'
</verb></tscreen>
Die nachfolgend beschriebenen Einstellungen betreffen alle virtuellen
Konsolen gleichzeitig. Welches die &dquot;richtige&dquot; Datei für die
Kommandos ist, darüber kann nur das Handbuch der eigenen Distribution
Auskunft geben. (Tip: das Configuration HOWTO kann in vielen Fällen
helfen.)
Weiterführende Literatur: Keystroke-HOWTO (engl.).
Es ist unter Linux übrigens <em/nicht/ notwendig, die virtuellen
Bildschirme mit dem Befehl `stty pass8' in den 8-bit Modus zu schalten -
das sind sie nämlich von Hause aus.
<sect2>Tastenbelegung der Textkonsolen
<p>
Für die unterschiedlichen Tastaturen der verschiedenen Länder liegen im
Verzeichnis `/usr/lib/kbd/keytables' vorgefertigte
Konfigurationsdateien. Mit dem Kommando `loadkeys' kann man eine solche
Datei in den Linux-Kernel laden und dadurch den Tasten bestimmte Zeichen
zuordnen.
Um Mißverständnissen vorzubeugen: man ordnet den Tasten keine Bedeutungen
zu, sondern nur bestimmte Zeichen. Dadurch ist sichergestellt, daß die
Tastatur auch beim Arbeiten mit entfernten Rechnern funktioniert, denn
Zeichen kann man über jede Art von Netzwerkverbindung übertragen. Dagegen
wäre eine direkte Abfrage der Tastatur-Hardware (so wie unter DOS) über ein
Netzwerk nicht möglich - es ist ein Widerspruch in sich.
Die Bedeutung eines Zeichens (und damit einer Taste) kann von Programm zu
Programm leicht unterschiedlich sein und die Kunst liegt in der effektiven,
bzw. komfortablen Konfiguration der Bedeutung. Die länderspezifischen
Aspekte werden im kommenden Kapitel behandelt.
<sect3>Deutschland
<p>
Im einfachsten Falle werden Benutzer einer deutschen Tastatur mit
der Belegung `de-latin1-nodeadkeys.map' zufrieden sein:
Beispiel:
<tscreen><verb>
loadkeys de-latin1-nodeadkeys.map
</verb></tscreen>
<sect3>Schweiz
<p>
Geeignete Tastenbelegungen für die Schweiz sind `sf-latin1.map'
(swiss-french) und `sg-latin1.map' (swiss-german).
In der Deutschschweiz gibt es 2 verschiedene Tastaturlayouts, bei denen
wenige Tasten verschieden beschriftet sind (eckige Klammern, @-Zeichen an
verschiedenen Orten).
<sect3>Östereich
<p>
?
<sect3>Länderübergreifende Einstellungen
<p>
Die Tastaturtabellen sind Textdateien, die sich mit dem persönlichen
Lieblingseditor bearbeiten lassen. Um z.B. die französischen
Anführungszeichen auf &lt;AltGr .&gt; und &lt;AltGr -&gt; zu legen, ergänzt man
an den entsprechenden Stellen:
<tscreen><verb>
keycode 51 = comma semicolon guillemotright
keycode 52 = period colon guillemotleft
control keycode 105 = Meta_b
control keycode 106 = Meta_f
</verb></tscreen>
Die letzten beiden Einträge ermöglichen wortweises Springen auf der
Kommandozeile mit Strg-Cursortaste. Als Anregung für eigene
Ergänzungen hier eine Tabelle mit allen (?) symbolischen Namen:
<tscreen><verb>
&dquot; quotedbl ' apostrophe ` grave ~ asciitilde
^ asciicircum _ underscore ! exclam ? question
# numbersign $ dollar % percent &amp; ampersand
| bar @ at + plus - minus
* asterisk / slash \ backslash . period
, comma : colon ; semicolon &lt; less
= equal &gt; greater ( parenleft ) parenright
[ bracketleft ] bracketright { braceleft } braceright
¡ exclamdown ¢ cent £ sterling ¤ currency
¥ yen ¦ brokenbar § section &dquot; diaeresis
© copyright ª ordfeminine &lt; guillemotleft
¬ notsign ­ hyphen ® registered
¯ macron ° degree ± plusminus ² twosuperior
³ threesuperior ´ acute µ mu
¶ paragraph · periodcentered ¸ cedilla
¹ onesuperior º masculine &gt; guillemotright
¼ onequarter ½ onehalf ¾ threequarters
¿ questiondown À Agrave Á Aacute  Acircumflex
à Atilde Ä Adiaeresis °A Aring Æ AE
Ç Ccedilla È Egrave É Eacute ^E Ecircumflex
Ë Ediaeresis Ì Igrave Í Iacute Î Icircumflex
Ï Idiaeresis Ð ETH Ñ Ntilde Ò Ograve
Ó Oacute Ô Ocircumflex Õ Otilde Ö Odiaeresis
× multiply Ø Ooblique Ù Ugrave Ú Uacute
^U Ucircumflex Ü Udiaeresis Ý Yacute |O THORN
ß ssharp à agrave á aacute â acircumflex
ã atilde ä adiaeresis å aring æ ae
ç ccedilla è egrave é eacute ê ecircumflex
ë ediaeresis ì igrave í iacute î icircumflex
ï idiaeresis xo eth ñ ntild ò ograve
ó oacute ô ocircumflex õ otilde ö odiaeresis
÷ division ø oslash ù ugrave ú uacute
û ucircumflex ü udiaeresis ý yacute |o thorn
"y ydiaeresis
nul Tab Escape space BackSpace
Insert Remove Home End PageUp
Down Left Right Up PageDown
Macro Help Do Pause Linefeed
</verb></tscreen>
[Die Tabelle nicht ganz korrekt, da einige Zeichen vom
Formatierungswerkzeug nicht verarbeitet werden. Wir arbeiten daran.]
Die keytables(5), die dumpkeys(1) und loadkeys(1) Manpages erläutern welche
Symbole gültig sind, insbesondere
<tscreen><verb>
dumpkeys --long-info
</verb></tscreen>
erzeugt eine Liste aller bekannten Zeichennamen und Modifier.
<sect4>Deadkeys
<p>
Mit <em/Deadkey/ wird eine Taste bezeichnet, bei deren Betätigung das
Zeichen zunächst zurückgehalten wird. Das nachfolgend eingegebene Zeichen
wird quasi über das zuerst eingegeben Zeichen gedruckt, falls die
Kombination Sinn ergibt. Ansonsten werden beide Zeichen nacheinander
ausgegeben.
Beispiel: ist die Tilde als Deadkey konfiguriert, so ergibt &lt;&tilde;&gt;
&lt;a&gt; ein ã (a mit Tilde darüber).
<sect4>Compose
<p>
Alternativ zu den Deadkeys kann man auch mit der &lt;Compose&gt;-Taste
arbeiten: sie druckt zwei nacheinander eingetippte Zeichen
übereinander. So ergibt die Tastenfolge &lt;Compose&gt; &lt;&tilde;&gt; &lt;a&gt; ein ã,
während ein &lt;&tilde;&gt; &lt;a&gt; weiterhin &tilde;a anzeigt.
Um &lt;Compose&gt; auf die an vielen neuen Tastaturen vorzufindenden
zusätzlichen Tasten zu legen, kann man z.B. konfigurieren:
<tscreen><verb>
keycode 127 = Compose
</verb></tscreen>
Bei mir trägt diese Taste das Symbol &dquot;Quadrat mit Pfeil in der linken
oberen Ecke&dquot;. Die Taste mit dem Fenster-Symbol (früher: Diamant-Symbol
oder <em/Meta/) hat die Nr. 125.
<sect4>Unicode
<p>
Bei Verwendung eines <em/Unicode/-Zeichensatz sollte man auch die
Tastatur in den Unicode-Modus schalten:
<tscreen><verb>
kbd_mode -u
</verb></tscreen>
<sect1>Zeichensatz für die Textkonsolen
<p>
Damit die länderspezifischen Zeichen überhaupt auf dem Bildschirm
dargestellt werden können, muß der entsprechende Zeichensatz für den
Bildschirm geladen werden. Akzeptable Ergebnisse erzielt man in der
Regel mit `lat1u-16.psf', einem 16-Punkt hohen UNIcode-Zeichensatz.
<!-- ^^^^^^
Ich haette gesagt, nur Latin1! Oder wie bekomme ich dann den Klingonen
Zeichensatz her?! -->
Der zugehörige Befehl zum Laden sieht z.B. so aus:
<tscreen><verb>
setfont /usr/lib/kbd/consolefonts/lat1u-16.psf
</verb></tscreen>
Die Details sind wiederum der Dokumentation der eigenen Distribution
zu entnehmen.
<sect2>Unicode
<p>
Um den <em/Unicode/-Zeichensatz für die Anwendungsprogramme freizugeben muß
man die Zeichenfolge <tt/ESC ( K/ an den virtuellen Bildschirm senden. Dies
kann z.B. durch die Befehlsfolge
<tscreen><verb>
for i in 1 2 3 4 5 6 7 8
do
echo -n -e "\033(K" > /dev/tty$i
done
</verb></tscreen>
geschehen. Diese Lösung ist allerdings aus verschiedenen Gründen
sub-optimal.
<sect1>Tastenbelegung von `XFree86'
<p>
`XFree86' ermöglicht den Betrieb von Programmen, die das
`X Window System' benötigen. In Verbindung mit einem
sogennanten `Windowmanager', der das Look&amp;Feel bestimmt,
stellt es die grafische Benutzeroberfläche unter Linux zur
Verfügung.
Oft wird empfohlen, die Tastenbelegung des XFree86 durch die Datei
<tt>~/.Xmodmap</tt> oder mit dem Befehl <tt/xmodmap/ zu
konfigurieren. Dies ist nicht erforderlich, sondern unnötig
kompliziert. Tatsächlich ist nur ein Eintrag in der
Konfigurationsdatei des XFree86 notwendig, um die &lt;AltGr&gt; Taste zu
aktivieren. Die Vorgehensweise unterscheidet sich für die
verschiedenen Versionen:
<sect2>Version 2.1:
<p>
Konfigurationsdatei: <tt>/usr/X11/lib/X11/Xconfig</tt>
Mit Ausnahme der in der Tastaturbelegung vereinbarten Deadkeys werden
die Tasten genau wie auf der Textkonsole belegt. Die Deadkeys (s.o.)
sind unter Version 2.1 tatsächlich `dead' - aber leider ganz, nicht
nur `halb'. Die Freigabe der Alt-Tasten muß manuell vorgenommen
werden, dazu trägt man im Abschnitt <em/Keyboard/ ein:
<tscreen><verb>
LeftAlt Meta
RightAlt ModeShift
</verb></tscreen>
<sect2>Version 3.1
<p>
Konfigurationsdateien: <tt>/etc/X11/XF86Config</tt> und
<tt>/etc/XF86Config</tt>
Die Tastatur ist genau wie auf der Konsole belegt, auch die
Deadkeys und &lt;Compose&gt; funktionieren (falls als solche konfiguriert).
Um allerdings in den Genuß der &lt;Alt &gt;- und &lt;AltGr &gt;-Tasten zu kommen,
muß man bei der Erzeugung der
Konfigurationsdatei (Programm <tt/xf86config/) folgende Frage mit
`y' (yes) beantworten:
<tscreen><verb>
Do you want to enable these bindings for the Alt keys?
</verb></tscreen>
Alternativ kann man die entsprechenden Einstellungen auch per Hand
im Abschnitt <tt/Section &dquot;Keyboard&dquot;/ vornehmen:
<tscreen><verb>
LeftAlt Meta
RightAlt ModeShift
</verb></tscreen>
`RightAlt ModeShift' aktiviert die &lt;AltGr&gt;-Taste und
`LeftAlt Meta' sorgt für eine Emulation der &lt;Meta&gt;-Taste (benötigen
z.B. die Programme <tt/emacs/ und <tt/bash/).
<sect2>Version 3.2 und höher:
<p>
Konfigurationsdateien: <tt>/etc/X11/XF86Config</tt> und
<tt>/etc/XF86Config</tt>
Hat man eine Konfigurationsdatei der Version 3.1 oder will man es sich
besonders einfach machen, dann verfährt man wie oben beschrieben und
ergänzt im Abschnitt <tt/Section &dquot;Keyboard&dquot;/ lediglich
<tscreen><verb>
XkbDisable
</verb></tscreen>
Dadurch wird die unter Linux etwas kompliziert anmutende Xkbd-Technik
abgeschaltet und das X liest stattdessen die Tastaturbelegung der
Textkonsolen (auf diese Weise braucht man nur eine Sache zu konfigurieren).
Äquivalent kann man bei der Erzeugung der Konfigurationsdatei (Programm
<tt/xf86config/) folgende Frage mit `n' (no) beantworten:
<tscreen><verb>
Do you want to use XKB?
</verb></tscreen>
Beantwortet man diese Frage mit `y' (yes), dann sind in der
Konfigurationsdatei folgende Einträge zu entkommentieren (d.h. das
`&num;'-Zeichen ist zu entfernen):
<tscreen><verb>
# XkbLayout "de"
# XkbVariant "nodeadkeys"
</verb></tscreen>
<sect2>Alle Versionen:
<p>
Sondermodelle fertigt man mit dem Befehl
<tscreen><verb>
xmodmap -pke &gt; ~/.Xmodmap
</verb></tscreen>
und einem Editor nach Wahl an. Die globale Konfigurationsdatei ist
<tt>/etc/X11/Xmodmap</tt>. Leider gibt es keine empfehlenswerte
Software zur komfortableren Konfiguration der Tastatur (<tt/xkeycaps/
ist katastrophal in Sachen Benutzerführung).
Empfehlenswert für die Xmodmap sind etwa
<tscreen><verb>
! Freigabe der Compose-Taste
keycode 117 = Multi_key
! Punkt auf das Komma des Ziffern-Blocks
keycode 91 = period
! Was um alles in der Welt ist die Super-Taste?
keycode 115 = Super_L
! Für diejenigen, die ^? als Backspace auf der Konsole konfiguriert haben.
keycode 22 = BackSpace
</verb></tscreen>
<sect3>Unicode
<p>
?
<sect1>Zeitzonen
<p>
Die ganze Welt ist in Zeitzonen unterteilt, innerhalb derer eine
einheitliche Zeit gilt (unabhängig von der Zeit einer Sonnenuhr an dem
betreffenden Ort). Bezugspunkt für die Einteilung ist die <em/Universal
Time/, kurz UTC.
Zu einer Zeitzone gehören bestimmte Regeln, wie z.B. die Umstellung von
Sommer- auf Winterzeit. Linux kann diese Regeln automatisch
berücksichtigen.
Allerdings ist die automatische Zeitumstellung nur angebracht, wenn Linux
das einzige Betriebssystem auf dem Rechner ist oder auch das andere
Betriebssystem auf diese Technik beherrscht.
<sect2>DOS
<p>
Der Treiber <tt/clock.sys/ bringt DOS den Umgang mit Zeitzonen
bei. Der TZ-Wert für die deutsche Zeitzone in <tt/clock.sys/ ist
<tscreen><verb>
CET-1CEST,M3.5.0/2,M10.5.0/3
</verb></tscreen>
Der Treiber <tt/clock.sys/ ist z.B. erhältlich unter der URL
<quote>
<url url="ftp://ftp.tu-chemnitz.de/pub/simtel/msdos/clock/clk360rs.zip">
</quote>
<sect2>Linux
<p>
Unter Linux gibt es quasi 3 Zeiten:
<itemize>
<item>Die der auf dem Motherboard installierten CMOS-Uhr,
<item>die Systemzeit des Linux-Kernels und
<item>die dem Benutzer von verschiedenen »Uhren« angezeigte Zeit.
</itemize>
<tscreen><verb>
»clock -u -w« »date -u -s«
CMOS-Uhr <-------------- Linux <--------------
(Mainboard) Systemzeit Benutzer-Uhr
--------------> (UTC) -------------->
»clock -u -s« »date«, »xclock«
</verb></tscreen>
Die Programme <tt/clock/ und <tt/date/ übersetzen zwischen diesen Uhrzeiten.
Zwar liest der Kernel schon beim Booten die CMOS-Uhr aus und interpretiert
sie als UTC. Aber um systematische Fehler der CMOS-Uhr zu korrigieren, wird
die Uhrzeit vom Skript <tt>/etc/init.d/boot</tt> (oder vergleichbar) ein
weiteres Mal gelesen. Dort wird dann der <tt/clock/-Befehl ausgeführt und
ist daher für die weiteren Betrachtungen ebenfalls relevant.
Für die Umstellung von Sommer- auf Winterzeit gibt es zwei Möglichkeiten:
manuell oder automatisch.
<tscreen><verb>
Umstellung manuell automatisch
----------------------------------------------------
CMOS-Uhr Ortzeit UTC
Option für clock -keine- -u
</verb></tscreen>
Die Zeitzone der CMOS-Uhr setzt man am sichersten während des Bootens im
BIOS Setup. &dquot;UTC&dquot; ist die <em/Universal Time/:
im Winter eine, im Sommer zwei Stunden weniger.
Welches Skript den Befehl <tt/clock/ ausführt (und demnach die Option '-u'
enthalten kann) muß man dem Handbuch der eigenen Distribution entnehmen.
Die eigentliche Zeitzone wird unabhängig von den obigen Einstellungen durch
den Link <tt>/usr/lib/zoneinfo/localtime</tt> festgelegt. In der Regel
zeigt dieser Link auf die Hauptstadt des eigenen Landes:
<tscreen><verb>
Land Zeitzonen-Datei
|- Zeitzone -|
-----------------------------------------------
Deutschland /usr/lib/zoneinfo/Europe/Berlin
Östereich /usr/lib/zoneinfo/Europe/Vienna
Schweiz /usr/lib/zoneinfo/Europe/Zurich
</verb></tscreen>
Um den Link anzulegen kann man das Kommando <tt/ln/ verwenden, im Falle von
Deutschland lautet die komplette Befehlszeile dann:
<tscreen><verb>
ln -sf /usr/lib/zoneinfo/Europe/Berlin /usr/lib/zoneinfo/localtime
</verb></tscreen>
<!-- Die Debian-Distribution geht noch einen Schritt weiter und leitet den
link über <tt>/etc/localtime</tt>, um alle Einstellungen in /etc
unterzubringen. -->
Die eingestellte Zeitzone kann mit der Umgebungsvariable <tt/TZ/
überschrieben werden:
<tscreen><verb>
export TZ=Asia/Hong_Kong; xclock & export TZ=Africa/Dakar; xclock &
</verb></tscreen>
Das früher gebräuchliche &dquot;MET&dquot; sollte unter keinen Umständen
weiterverwendet werden. Markus Kuhn schrieb mir:
<quote>
Die Datei /usr/lib/zoneinfo/MET existiert nur zwecks
Rückwärtskompatibilität. Die Autoren der Zeitzonentabellen
(Olson/Eggert/et al.) wollen eigentlich, daß deutsche Benutzer statt
MET die Datei Europe/Berlin verwenden. Dann stimmen sogar die
historischen Sommerzeiten vor 1945, die Linux auch alle
kennt. Außerdem wird dann in der neuesten Version der
Zeitzonentabelle "Mitteleuropäische Zeit (MEZ)" endlich korrekt ins
Englische mit "Central European Time (CET)" übersetzt, denn "MET" ist
ein Übersetzungsfehler (siehe z.B. Langenscheid Englisch; ich habe
deswegen sogar beim Physikalisch-Technischen Bundesamt nachgefragt,
die für die deutsche Zeit verantwortlich sind). "CEST" ist dann
entsprechend "Central European Summer Time" ("MET DST", wie es noch in
vielen Linux-Installationen benutzt wird, war eine falsche
Uebersetzung von MESZ).
</quote>
<sect>Anwendungssoftware
<p>
Mittlerweile sind viele Programme hinsichtlich der Unterstützung von
landesspezifischen Einstellungen so weit genormt, man einen Großteil
der Konfiguration durch Setzen der Umgebungsvariable <tt/LANG/ auf den
Wert <tt/de_DE/ erledigen kann. Dies ist ein Standard, der in einem
der vielen POSIX-Standards festgelegt wird, der aber nicht alle
Bereiche abdeckt. So fehlen z.B. Papiergröße und Zeitzone; allerdings
wären beide bei größeren Ländern schlecht mit einer Variable zu
erfassen, so daß man sie außen vorgelassen hat.
Der richtige Ort für das Setzen von Umgebungsvariablen sind die
Dateien <tt>/etc/profile</tt> oder <tt>~/.bash_profile</tt>:
<tscreen><verb>
#LANG=de_AT # in Österreich
#LANG=de_CH # in der deutschsprachigen Schweiz
LANG=de_DE # in Deutschland
export LANG
</verb></tscreen>
Soweit die Theorie. In der Tat ist es etwas nervig, wenn sich deutsche und
engliche Fehlermeldungen, Datumsangaben, usw. aufgrund von unvollständiger
Internationalisierung mischen:
<tscreen><verb>
tar: Kann Archiv 'foo.tgz' nicht öffnen: Permission denied
</verb></tscreen>
In einem solchen Fall überschreibt man lieber diesen Aspekt der
LANG-Variable:
<tscreen><verb>
LC_MESSAGES=C
export LC_MESSAGES
</verb></tscreen>
Dabei gehe ich davon aus, daß die eigene Linux-Distribution den
POSIX-Standard durch die <em/Locale/-Dateien bereitstellt. Leider sind noch
nicht alle Linux-Distributionen auf diesem Stand, so daß die obige
Einstellung evtl. zu nervigen Fehlermeldungen führt. Beispiel:
<tscreen><verb>
Warning: locale not supported by C library, locale unchanged
</verb></tscreen>
In einem solchen Fall sollte man sich beim Hersteller des Distribution
beschweren. Oder auf eigene Faust die locale-Dateien installieren,
inkl. Kompilation der libc.
Details zu den <em/Lokalen/ findet man im Linux Locale mini-HOWTO oder in
der man-page zu locale. Der Rest dieses Kapitels behandelt die
&dquot;Ausreißer&dquot;, die die Umgebungsvariable LANG nicht auswerten.
<sect1>Außer Konkurenz ...
<p>
<sect2>Zeichensätze ohne Umlaute
<p>
Sowohl für die Textkonsole als auch für X11 existieren Zeichensätze
(engl. `fonts'), die nicht alle Zeichen aus <em/ISO-latin1/
enthalten. D.h. die fehlenden Zeichen (z.B. Umlaute) werden als
Leerzeichen oder gar nicht auf dem Bildschirm dargestellt. In diesem
Fall hilft natürlich die Konfiguration der Programme nicht weiter,
sondern es muß ein anderer (vollständiger) Zeichensatz gewählt werden.
<sect2>Eigene Süppchen
<p>
Konfigurationsdateien: <tt>~/.Xresources</tt> und <tt>/etc/X11/Xresources</tt>
Das X-Window-System wartet mit einer eigenen Konfigurationsmöglichkeit
für Locale auf. Diese muß man aber nur nutzen, wenn man für einzelne
X-Programme die Locale anders setzen will, d.h. wenn man die Einstellungen
in den Umgebungsvariablen überschreiben will.
Anders ausgedrückt: durch Setzen der Locale über die X-Resourcen
verkompliziert man in den meisten Fällen das Setup der eigenen
Linux-Machine (und wer will das schon). Andererseits gibt es natürlich
Fälle, in denen das evtl. notwendig ist (aber wer hat die schon).
Gerüchten zufolge bestimmen folgende Resourcen die Locale von X11:
<tscreen><verb>
!*displayLang: de_DE
!*timeFormat: de_DE
!*inputLang: de_DE
!*basicLocale: de_DE
!*numeric: de_DE
</verb></tscreen>
Achtung: das Kommentarzeichen ist `!', nicht `&num;'.
<sect1>Die Ausreißer
<p>
Solange nicht ausdrücklich erwähnt, betreffen die Einstellungen alle
Versionen eines Programms. Die vorzunehmenden Einstellungen sind durch
Einrückung markiert.
<sect2>readline und Verwandte (z.B. <tt/bash/)
<p>
Konfigurationsdatei: <tt>~/.inputrc</tt>
Versionen: ab bash 1.14.1
<tscreen><verb>
set meta-flag on
set convert-meta off
set output-meta on
</verb></tscreen>
Kopiert man die Datei außerdem noch nach `/etc/skel/', so erhält sie
jeder neu angelegte Benutzer automatisch. Eine globale
Konfigurationsdatei gibt es leider noch nicht.
Vorsicht: Kommentare und Leerzeilen in dieser Datei können zu
Problemen füren.
<sect2>telnet
<p>
Konfigurationsdatei: <tt>~/.telnetrc</tt>
Erscheinen beim <tt/telnet/ statt `äöü' die Zeichen `dv|', so muß
man für jede Maschine einen Eintrag der Form:
<tscreen><verb>
localhost
set binary true
</verb></tscreen>
anlegen. Denselben Effekt erreicht man mit der Option "-8". Eine
globale Konfigurationsdatei für <tt/telnet/ existiert nicht.
<sect2>ytalk
<p>
Konfigurationsdateien: <tt>~/.</tt> und <tt>/etc/</tt>
<!-- XXXX -->
<sect2>selection
<p>
Das Programm selection muß neu compiliert werden, damit es Umlaute korrekt
per Cut&amp;Paste transportiert. Die notwendigen Modifikationen (Patch)
stammen von Andries Brouwer und liegen unter der URL
ftp://ftp.win.tue.nl/pub/linux/util
Gegenüber <tt/gpm/ verbraucht <tt/selection/ deutlich weniger virtuellen
Speicher, daher ist es auch heute noch von Interesse.
<sect2>dosemu
<p>
Konfigurationsdateien: <tt>~/.dosrc</tt> und <tt>/etc/dosemu.conf</tt>
Versionen: ab 0.52pl16
<tscreen><verb>
keyboard { layout de-latin1 keybint on rawkeyboard on }
X { updatefreq 8 title `DOS in a BOX' icon_name `xdos' keycode }
</verb></tscreen>
Hinweis: die Einstellung `keycode' funktioniert nur einwandfrei
mit XFree86, nicht dagegen mit Xterminals o.ä.
<sect2>emacs
<p>
Versionen: ab 19.22 (GNU)
Hinweis: einige Versionen des emacs haben Probleme mit der
Aktivierung der Umlaute. Ab Version 19.29 sollten damit keinerlei
Schwierigkeiten mehr auftreten.
<label id="emacsrc">
Die Haupt-Konfigurationsdateien für den `emacs' sind:
<tscreen><verb>
/usr/lib/emacs/site-lisp/site-start.el (global),
~/.emacs (persönlich),
/usr/lib/emacs/site-lisp/default.el (global),
</verb></tscreen>
und werden in dieser Reihenfolge abgearbeitet. Insbesondere
überschreiben also die Einstellungen in der `default.el' die
Einstellungen aus `~/.emacs' und `site-start.el'. Diese Einträge
erlauben das Arbeiten mit Umlauten:
<tscreen><verb>
(set-input-mode (car (current-input-mode))
(nth 1 (current-input-mode))
0)
(standard-display-european t)
</verb></tscreen>
Speziellere Informationen findet man in der FAQ zum Thema `emacs und
Umlaute' von Karl Brodowsky, erhältlich unter der URL:
<quote>
<url url="ftp://ftp.uni-erlangen.de/pub/doc/ISO/deutsch/emacs-umlaute-faq.gz">
</quote>
<sect2>less
<p>
Konfigurationsdateien: <tt>~/.bash_profile</tt> und <tt>/etc/profile</tt>
Versionen: nur ältere Versionen sind betroffen
<tscreen><verb>
export LESSCHARSET=latin1
</verb></tscreen>
<sect2>pine
<p>
Konfigurationsdateien: <tt>~/.pinerc</tt> und <tt>/etc/pine.conf</tt>
<tscreen><verb>
# character-set should reflect the capabilities of the display
# you have. Normal default is US-ASCII. Typical alternatives
# include ISO-8859-x, where x is a number between 1 and 9.
character-set=ISO-8859-1
</verb></tscreen>
<sect2>joe
<p>
Konfigurationsdateien: <tt>~/.joerc</tt> und <tt>/etc/joe/joerc</tt>
<tscreen><verb>
-asis
</verb></tscreen>
Achtung, das Minus muß in der 1. Spalte stehen.
<sect2>elm
<p>
Konfigurationsdatei: <tt>~/.elm/elmrc</tt>
<tscreen><verb>
charset = iso-8859-1
displaycharset = iso-8859-1
textencoding = 8bit
</verb></tscreen>
<sect2>nn
<p>
Konfigurationsdatei: <tt>~/.nn/init</tt>
<tscreen><verb>
set data-bits 8
</verb></tscreen>
Eine globale Konfigurationsdatei existiert nicht.
<sect2>lynx
<p>
Konfigurationsdateien: <tt>~/.lynxrc</tt> und <tt>/etc/lynx.cfg</tt>
Versionen: ab 2.4
<tscreen><verb>
CHARACTER_SET:ISO Latin 1
</verb></tscreen>
<sect2>gslp
<p>
Kann von Hause aus keine Umlaute. Es ist ein patch erforderlich, dessen
Beschreibung die Zielsetzung dieses HOWTO sprengt.
<sect2>xfig
<p>
Kommandozeilenoption:
<tscreen><verb>
-metric
</verb></tscreen>
<sect1>Weiterführende Tips
<p>
<sect2>emacs
<p>
Der emacs kann in seinen Fähigkeiten durch Lisp-Module erheblich
erweitert werden. Er ist dadurch das Schweizer Taschenmesser unter den
Texteditoren. &dquot;Nur Kaffeekochen kann er nicht&dquot;.
Die Lisp-Module tragen die Dateiendung <tt/.el/ oder <tt/.elc/;
letztere ist die compilierte Form einer <tt/.el/-Datei. <tt/emacs/
sucht z.B. im Verzeichnis <tt>/usr/lib/emacs/site-lisp</tt> nach
solchen Modulen.
Die Laden der Module kann im emacs per Hand mit dem Kommando
<tscreen><verb>
&lt;Alt x&gt; load-library &lt;return&gt; pc-mode &lt;return&gt;
</verb></tscreen>
vorgenommen werden. Alternativ kann man durch die Anweisung
<tscreen><verb>
(load &dquot;pc-mode&dquot;)
</verb></tscreen>
in einer der Konfigurationsdateien das Modul dauerhaft laden. Nachfolgend
die Beschreibung einiger nützlicher Module:
<descrip>
<tag/pc-mode/
Konfiguriert die Tastaturbelegung so, wie PC-Benutzer es gewohnt sind.
Keine Landesspezifischen Abhängigkeiten, aber oft gefragt. In der
Konfigurationsdatei eintragen:
<tscreen><verb>
;;; pc-mode.el --- emulate certain key bindings used on PCs.
(load "pc-mode")
(pc-bindings-mode)
</verb></tscreen>
<tag/pc-select/
Stellt Cut&amp;Paste wie unter MacOS oder Win ein.
<tscreen><verb>
;;; pc-select.el --- emulate cut&amp;paste like on PC or Mac
(load "pc-select")
(pc-selection-mode)
</verb></tscreen>
<tag>iso-tex und iso-cvt</tag>
Zeigen die Umlaute unverändert an, speichern sie aber in dem TeX-Format
ab.
<tag>konvers</tag>
Wie `iso-tex', kann aber nicht nur in beide Richtungen konvertieren,
sondern beherrscht auch noch andere Formate wie etwa <em/MIME/.
<tag>iso-acc (iso-accent-mode) und alt-symbol</tag>
Erlauben die Eingabe von Umlauten und Akzenten durch vorangestellte
Zeichen, d.h. &tilde;a wird schon während der Eingabe der Zeichen zu einem a
mit der Schlange darüber (und auch als solches abgespeichert).
<tag>AUCTeX</tag>
AUCTeX ist eine leistungsfähige Umgebung zum Verfassen von TeX- und
LaTeX-Dokumenten. Die automatische Erkennung von landesspezifischen
Besonderheiten wird mit dem Eintrag
<tscreen><verb>
(setq TeX-parse-self t)
</verb></tscreen>
in einer der Konfigurationsdateien aktiviert. `&bsol;usepackage{german}'
wird daraufhin von AUCTeX als Indikator verwendet.
</descrip>
Die erwähnten Pakete sind erhältlich unter der URL:
<descrip>
<tag/AUC TeX/ <url url="ftp://sunsite.auc.dk/packages/auctex/auctex.tar.gz">
<tag/alt-symbol.el/ <url url="ftp://ftp.vlsivie.tuwien.ac.at/pub/8bit">
<tag/iso-tex.el/ <url url="ftp://ftp.dante.de/pub/tex/support/iso-tex">
<tag/konvers.el/ <url
url="ftp://ftp.uni-erlangen.de/pub/doc/ISO/charsets/konvers-862.tar.gz">
</descrip>
<sect2>TeX/LaTeX
<p>
TeX ist ein professionelles Satzsystem. LaTeX ist eine Sammlung von
Macros zum effektiven Einsatz von TeX.
<sect3>Verarbeitung von Umlauten
<p>
<sect4>LaTeX 2e und höher
<p>
Das Paket zur Verwendung des latin1-Zeichensatzes ist mittlerweile
fester Bestandteil von LaTeX. Es wird aktiviert mit der Anweisung
<tscreen><verb>
\usepackage[latin1]{inputenc}
</verb></tscreen>
im Kopfteil des Dokuments.
<sect4>plain-TeX, LaTeX2.09
<p>
Für diese Formate gibt es entweder keine Pakete oder nur veraltete
Style-Dateien. Daher kann man Dokumente, die solche veralteten Pakete
enthalten, i.a. nicht an andere versenden. Eine Verwendung der alten
Makros wie <tt/iso.sty/, <tt/xlatin1.sty/ und <tt/umlaute.sty/ (für den
Atari) wird daher nicht empfohlen.
<sect3>Layout
<p>
Folgendes Beispiel kann als simples Grundgerüst für deutsche Texte
(hier: Artikel) verwendet werden:
<tscreen><verb>
\documentclass[a4paper]{article}
% Die Option &dquot;a4paper&dquot; stellt als Papiergröße
% DinA4 ein. Alle anderen LaTeX-Pakete verlassen sich auf
% diese Einstellung.
\usepackage{german}
% stellt Abkürzungen für typische deutsche Besonderheiten
% bereit. Die Dokumentation befindet sich auf den
% CTAN-Serven unter /pub/tex/language/german/germdoc.tex
%\usepackage[T1]{fontenc}
% % Erlaubt die Trennung von Wörtern mit Umlauten
\usepackage[latin1]{inputenc}
% gibt den Zeichensatz des Dokuments an und macht somit die
% Eingabe von latin1-Zeichen möglich.
\usepackage{a4}
% stellt den bedruckten Bereich einer Seite, den sogenannten
% <em/Satzspiegel/, ein. Er wird so berechnet, daß
% durchschnittlich circa 60 bis 70 Buchstaben in einer Zeile
% vorkommen, da man sonst beim Lesen die Zeilen verliert.
%\usepackage[german]{babel}
% Aktiviert die Unterstutzung mehrerer Sprachen gleichzeitig.
\begin{document}
...
\end{document}
</verb></tscreen>
Weitere Informationen findet man unter der URL <url
url="http://www.dante.de/dante/dante-faq.html">
Eine bessere Alternative zur Satzspiegeleinstellung bietet das Paket
&dquot;typearea.sty&dquot;. Dieses Paket findet man bei den
Koma-Script-Klassen von Markus Kohm unter <url
url="ftp://ftp.dante.de/pub/tex/macros/latex/contrib/supported/koma-script/"
name="ftp://[CTAN]/pub/tex/macros/latex/contrib/supported/koma-script/">,
die das &dquot;typearea.sty&dquot;-Paket intern verwenden. Es ist aber auch
zusammen mit den Standardklassen (z.B. article) verwendbar.
Die Koma-Script-Klassen beachten auch andere deutsche Typographieregeln und
sind daher sehr empfehlenswert. Dokumentation zu den Koma-Script-Klassen
und dem &dquot;typearea.sty&dquot;-Paket befinden sich unter <url
url="ftp://ftp.dante.de/pub/tex/macros/latex/contrib/supported/koma-script/scrg
uide.ps"
name="ftp://[CTAN]/pub/tex/macros/latex/contrib/supported/koma-script/scrguide.
ps">.
<descrip>
<tag/CTAN/
Comprehensive TeX Archive Network, bestehend aus (bald wieder)
drei Rechnern in Amerika, Großbritannien und Deutschland. Der
amerikanische und der deutsche Rechner sind von DANTE e.V (
Deutschsprachige Anwendervereinigung TeX) angeschafft und
finanziert worden. Der deutsche Rechner hat den Namen <tt/ftp.dante.de/.)
</descrip>
<sect3>Deutsche Wortrennung
<p>
Alle modernen TeX-Distributionen bieten die Möglichkeit, in der
zugehörigen Konfigurationsdatei das Kommentarzeichen &percnt; vor der Zeile
<tscreen><verb>
german ghyph31.tex
</verb></tscreen>
zu entfernen. Es werden dann Formate mit den deutschen Trennregeln
erzeugt.
Mit der Rechtschreibreform ab 1. August 1998 werden andere Trennregeln
gültig. Vermutlich werden dann rechtzeitig neue Trenntabellen zur
Verfügung stehen.
<sect2>Rechtschreibprüfung mit deutschem Wörterbuch
<p>
Zur Prüfung von Rechtschreibfehlern steht unter Linux das Programm
<tt/ispell/ zur Verfügung. Die meisten Distributionen bieten dieses
zur Installation an, die zugehörige deutsche Wortliste liegt seltener
bei.
<sect3>Die Wortlisten
<p>
Einen recht brauchbaren Grundstock für eine eigene Wortliste enthält
das Paket "hk-deutsch2" von H. Knutzen. Es umfaßt 22 Dateien, die
individuell zu einer eigenen Wortliste zusammengefaßt werden
können. Die dazu notwendigen Schritte werden in dem beiliegendem
README genau erklärt.
<!-- In meiner Erfahrung, muss man die hk-deutsch2 Wortliste zumindest
für Schweizerdeutsche Verhältnisse ziemlich stark nachbearbeiten... -->
Durch die individuelle Zusammenstellung werden die Wortlisten kleiner
und somit die Rechtschreibprüfung beschleunigt.
Es soll aber nicht verschwiegen werden, daß man diesen Listen in der
Regel noch eine &dquot;eigene&dquot; Wörter hinzufügen muß (dies ist mit
<tt/ispell/ automatisch möglich).
Das Paket ist erhältlich unter der URL:
<quote>
<url url="ftp://ftp.informatik.uni-kiel.de/pub/kiel/dicts/hk2-deutsch.tar.gz">
</quote>
<sect3>Das Rechtschreibprogramm <tt/ispell/
<p>
Da <tt/ispell/ nicht jedes Textformat automatisch erkennt,
muß man die Optionen <tt/-T latin1/ und <tt/-w &dquot;äöüÄÖÜß&dquot;/
verwenden. Kommen weitere nicht-ascii Zeichen im Text vor, so sollte
man diese ebenfalls mit der '-w'-Option zulassen.
Ein anderes als das englische Wörterbuch wird mit der Option '-d'
ausgewählt, also z.B.
<!-- Abmachung nach FSSTND: englische Namen für die Wörterbücher!,
also: ispell -d german ... -->
<tscreen><verb>
ispell -d german -T latin1 -w &dquot;äöüÄÖÜß&dquot; German-HOWTO.txt
</verb></tscreen>
für das Deutsche Wörterbuch in der Datei
<tt>/usr/dict/german.hash</tt> (Binärformat).
Ruft man <tt/ispell/ aus dem Editor <tt/emacs/ heraus auf, so kann man
obige Parameter automatisch übergeben, indem man folgenden Eintrag in
einer der Konfigurationsdateien des emacs vornimmt:
<!-- (defvar ispell-dictionary "deutsch8") soll angeblich reichen
International Ispell Version 3.1.18 01/14/95 -->
<tscreen><verb>
(setq ispell-extra-args '(&dquot;-Tlatin1&dquot;
&dquot;-d&dquot; &dquot;/usr/lib/german&dquot;
&dquot;-w&dquot; &dquot;äöüÄÖÜß&dquot;))
</verb></tscreen>
<sect>Textdateien
<p>
<sect1>Das Papierformat DIN A4
<p>
<!-- Debian-spezifisch: Eigentlich sollte die relvanten Programme die
libpaper Library verwenden -> /etc/papersize anpassen, sollten
theoretisch genügen (ha, ha) -->
Nähere Informationen zu Papierformaten findet man unter der URL
<quote>
<url url="http://www.ft.uni-erlangen.de/~mskuhn/iso-paper.html">
</quote>
<p>
Folgende Programme können auf das Papierformat <em/DIN A4/ eingestellt werden.
<sect2>xdvi
<p>
Konfigurationsdateien: <tt>~/.Xresources</tt> und <tt>/etc/X11/Xresources</tt>
<tscreen><verb>
XDvi.paper: a4
</verb></tscreen>
<sect2>ghostview
<p>
Konfigurationsdateien: <tt>~/.Xresources</tt> und <tt>/etc/X11/Xresources</tt>
<tscreen><verb>
Ghostview.pageMedia: A4
</verb></tscreen>
<sect2>gs
<p>
Kommandozeilenoption
<tscreen><verb>
-sPAPERSIZE=a4
</verb></tscreen>
<sect2>dvips
<p>
Konfigurationsdateien: <tt>~/.dvipsrc</tt> und <tt>/usr/lib/texmf/dvips/config.ps</tt>
<tscreen><verb>
% Paper size information.
%
% If your default is a4 uncomment the following definition
% and comment out the letterSize definition.
%
@ a4size 210mm 297mm
@+ %%PaperSize: a4
</verb></tscreen>
<sect2>ImageMagick
<p>
Dieses Grafikpaket enthält ein Programm zur Konvertierung beliebiger
Grafikformate. Die Kommandozeilenoption
<tscreen><verb>
-page A4
</verb></tscreen>
erzwingt das Seitenformat <em/A4/.
<sect1>Konvertierung von DOS- und Mac-Texten nach Linux
<p>
Die Textformate von DOS, MACs und UNIX unterscheiden sich in zwei
Punkten:
<itemize>
<item>Codierung der Sonderzeichen (z.B. Umlaute)
<item>Markierung des Zeilenendes
</itemize>
<sect2>Die Zeilenenden
<p>
Das Ende einer Textzeile wird wie folgt markiert:
<tscreen><verb>
Linux: LF ("linefeed" = Zeilenvorschub, "^J", Ascii 10)
DOS: CR LF
Mac: CR ("carriage return" = Wagenvorlauf, "^M", Ascii 13)
</verb></tscreen>
<!-- DOS = degradierte Schreibmaschine? -->
Die Programme <tt/fromdos/, <tt/todos/ und <tt/frommac/, <tt/tomac/
wandeln ausschließlich die Zeilenenden um, die Zeichen selbst werden
nicht angepaßt. Gleiches gilt für die Optionen `conv=auto',
bzw. `conv=text' des mount-Kommandos bzgl. des MS-DOS
Dateisystems.
<sect2>Die Zeichensätze
<p>
Die Zeichensätze setzen sich wie folgt zusammen:
<tscreen><verb>
Linux: ISO-LATIN1
DOS: IBMPC Charactersets CP 437, CP 850, ...
Mac: Mac-Eigengebräu
</verb></tscreen>
Der erste Teil aller dieser Zeichensätze ist der ASCII-Zeichensatz, so daß
man Texte ohne Umlaute usw. nicht zu konvertieren braucht. Um sowohl
Zeilenenden, als auch die Sonderzeichen zu konvertieren, kann man das
Programm <tt/recode/ benutzen:
<tscreen><verb>
recode -d ibmpc:lat1 hausarb.tex
</verb></tscreen>
<!-- -d um die Backslashes nicht gleich mitzukonvertieren! -->
wandelt die DOS-Datei `hausarb.tex' in das Format <em/ISO-Latin-1/
um. Durch die Definition von Aliasen kann man sich das Leben etwas
einfacher machen:
<tscreen><verb>
alias unix2dos='recode lat1:ibmpc'
alias dos2unix='recode ibmpc:lat1'
alias unix2mac='recode lat1:mac'
alias mac2unix='recode mac:lat1'
</verb></tscreen>
Achtung: diese aliase sind in shell-Skripten nicht verfügbar.
<em/GNU recode/ ist von jedem GNU-mirror erhältlich, also z.B. von
<quote>
<url url="ftp://ftp.uni-koeln.de/packages/gnu/recode-3.4.tar.gz">
</quote>
<sect1>Drucken
<p>
<verb>
Der
Treppenstufen
-Effekt
(engl. staircase)
rührt
von
den
oben
beschriebenen
Unterschieden
im
Textformat
her.
</verb>
Die meisten Drucker besitzen ein kleines Mäuse-Klavier, an dem
man den Drucker vom DOS-Textformat auf das Unix-Textformat umstellen kann.
In der Regel wird damit auch automatisch auf die Betriebsart ISO-latin1
geschaltet, so daß auch Umlaute usw. gedruckt werden.
Weitere Informationen findet man im Linux Printing-HOWTO.
<sect1>PostScript
<p>
Fehlen in einem gedruckten PostScript-Dokument die Umlaute ganz oder
werden diese verstümmelt gedruckt, so liegt das nicht am Drucker oder
am `ghostscript' (konvertiert PostScript für den Drucker), sondern
an der Software: das PostScript wurde nicht korrekt erzeugt.
Besonders geschickt ist Word: es beginnt eine PostScript-Datei mit
&lt;Strg d&gt;, dem Zeichen für das Ende einer Datei (unter Linux). Das
fällt ebenfalls in die Kategorie "kaputtes PostScript" (wird aber
mittlerweile von den meisten Druckerfiltern abgefangen).
<!-- Du brauchst sowieso Glück, wenn Dir der PS-Drucker nicht gleich
explodiert bei einem Word Dokument -->
<sect>Programmierung
<p>
<sect1>National Language Support (NLS)
<p>
Für Programmierer unbedingt zu empfehlen ist das Paket `GNU
gettext'. Es stellt eine Bibliothek zur Verfügung, die den Programmen
zur Laufzeit den Zugriff auf länderspezifische Informationen erlaubt.
Welche Schritte im Einzelnen erforderlich sind, um ein Programm zu
internationalisieren, erläutert das Manual zu `gettext' (derzeit noch
`draft'-Stadium).
`GNU sharutils' ab der Version 4.2 ist ein beispielhaft
internationalisiertes Programm-Paket.
<sect1>Übersetzung von GNU-Programmen
<p>
Wer bei der Übersetzung von GNU-Programmen mithelfen will, sollte den
Email-Verteiler <tt/de@li.org/ abonnieren. Dahinter steht eine
majordomo-mailingliste (sprich: <tt/majordomo@li.org/ nimmt die
subscribe-Befehle entgegen)
<sect1>ncurses
<p>
Diese C-Bibliothek zur Bildschirmsteuerung ist seit Version 1.8.2 in
der Lage, mit 8-bit Zeichen umzugehen. Ältere Versionen sollten nicht
verwendet werden.
<sect1>Erzeugung von PostScript
<p>
Die auszugebenden Texte können Umlaute enthalten, wenn vorher folgende
Funktion aufgerufen wurde:
<tscreen><verb>
%
% change encoding to ISO8859-1 - reiner@schildi.xnc.com
%
% <fontname> ISOfindfont => <font>
%
/ISOfindfont {
dup 100 string cvs (ISO-) exch concatstrings cvn exch
findfont dup maxlength dict begin
{ 1 index /FID ne {def}{pop pop} ifelse } forall
/Encoding ISOLatin1Encoding def
currentdict
end definefont
} def
</verb></tscreen>
<sect>Anhang
<p>
<sect1>Erklärende Übersetzung einiger technischer Begriffe
<p>
Ohne ein gewisses Maß an Englisch-Kenntnissen wird man an Linux
nicht viel Freude haben, da sowohl die Dokumentation, als auch die
Menüs und Hilfe-Funktionen der Programme vornehmlich in Englisch
geschrieben sind.
Dieser Abschnitt soll das Verständnis englischen
Orginal-Dokumentation erleichtern, indem der technische Zusammenhang
der Vokabeln erläutert wird (wenn nötig).
Im Internet gibt es noch einige interaktive Wörterbücher, z.B.
unter der URL:
<quote>
<url url="http://www.chemie.fu-berlin.de/glossar/glossar.html">
</quote>
<verb>
ENGLISH DEUTSCH
---------------------------------------------------------------------------
abort Programm oder Verbindung abbrechen
argument Parameter (Einstellung), der einem Programm übergeben
wird
bracket eckige Klammer
character Zeichen
comment Kommentar
device Gerät; der Zugriff auf Geräte erfolgt unter Linux
fast ausschließlich über Dateien, die sogennanten
Gerätedateien im Verzeichnis `/dev'; meist bezieht
sich <em/device/ auf eine dieser Dateien
directory Verzeichnis
environment Umgebung; bezieht sich auf die Einstellungen, die
einem Programm mit Umgebungsvariablen (enviroment
variables) übergeben wird
file Datei
file descriptor Dateizugriffsnummer; programminterne Nummer für
eine offene Datei
font Zeichensatz
host Maschine, Computer, Rechner (wörtlich: Gastgeber)
I/O Ein-/Ausgabe
kernel Betriebssystemkern; der heilige Teil von Linux
key Taste
keyboard Tastatur
library Zusammenfassung von compilierten C-Routinen zu
einer Bibliothek, die dann aus jedem anderen
Programm heraus benutzt werden kann
link Verweis; anstatt eine Datei zu kopieren, kann man
auch einen Verweis anlegen; dies spart Platz und
erlaubt einige Tricks
load laden, Beladung, Ausnutzung; in Zusammenhang mit
der Auslastung einer Maschine gebraucht
lock Sperre (meist gewollt)
mount montieren, zusammensetzen; stets im Zusammenhang
mit dem Verzeichnisbaum, der durch das Kommando
`mount ...' zusammengesetzt wird
network Computernetz(werk)
news
OS Betriebssystem (Operating System)
overflow bei einer mathematischen Operation ist ein Ergebnis
aufgetreten, daß wegen seiner Größe nicht mehr
in die dafür vorgesehene Variable paßt
parenthesis runde Klammer
path Pfad, meist als Begriff für den kompletten
Verzeichnisnamen zu einer Datei gebraucht
pipe Röhre, Veranschaulichung der Weiterleitung von Daten
von einem zum nächsten Programm; das sogennante
`pipe-symbol' ist das Zeichen | (senkr. Strich)
press Drücken Sie (die Taste)
quote Anführungszeichen oder Zitat
<!-- quoten = quotes benutzen = zitieren -->
remote im Sinne von &dquot;die Gegenseite der Verbindung&dquot;
resolve Ermittlung (Auflösung) der numerischen IP-Adresse,
die zu einem Maschinennamen gehört
server Computer, der anderen Computern Dateien oder
Dienstleistungen zur Verfügung stellt
source meist Begriff für die Programmtexte (Quellcode,
Sourcecode) benutzt; &dquot;may the source be with you&dquot;
UTSL: Use the source, Luke.
space Leerzeichen
string Zeichenkette
template Vorlage, Muster, Schablone
trace Ablaufverfolgung
type Tippen Sie ein
underflow Unterlauf, z.B. &dquot;der Unterlauf des Rheins&dquot; ;-)
Im Ernst: Wenn bei einer Floating-Point Berechnung, die Zahl
kleiner als das Maschinen-Epsilon wird, wird dies mit dem
Underflow-Flag angezeigt.
wildcard Joker, meist erfüllt der Stern * diese Funktion,
z.B. zur unvollständigen Angabe von Dateinamen
</verb>
</article>