Dieses Dokument soll Gnus-Benutzern und solchen, die es werden wollen, einen Überblick darüber geben, welche Versionen von (X)Emacs1 und Gnus verschiedene Zeichensätze (Charsets siehe Glossar), z.B. Latin-*, Windows-1252, UTF-8 unterstützen.
Da die Entwicklung beider Varianten voranschreitet, kann das hier gesagte nur eine Momentaufnahme sein. Das gilt auch für andere Features, wo mal die eine, mal die andere (X)Emacs-Variante die Nase vorn hat. Ein paar Bereiche, in denen sich die Varianten aus User-Sicht merklich unterscheiden können, sind: Speicherverbrauch, Geschwindigkeit (der Lisp-Engine), Paketmanager, Buffer-Tabs, horizontale Scrollbars, Image-Support, Tool-Bar, ...
Diese Aspekte werden hier aber nicht bewertet, da sie von sehr vielen Faktoren abhängen (Version, Betriebssystem, ...). In diesem Text stehen die für Gnus relevanten Features im Vordergrund.
Wer (X)Emacs vor allem für Gnus nutzen möchte (und noch keine ausgeprägte Vorliebe für die eine oder andere Variante hat) ist bei den stabilen Versionen momentan mit Emacs 22.1 am besten bedient.
Wer XEmacs bevorzugt, muß derzeit Einschränkungen bezüglich Charsets, vor allem bei UTF-8, in Kauf nehmen.
Was bedeuten die Begriffe stable, alpha, Entwicklerversion, CVS, nightly, beta, RC oder gamma?
Eine stabile, von den Entwicklern offiziell freigegebene Version. Momentan sind die neuesten stabilen Versionen Emacs 21.4, XEmacs 21.4 und bei Gnus ist es Gnus 5.10.2.
Gnus 5.9 ist im wesentlichen eine an Emacs 21 angepasste Version von Gnus 5.8.8 und diese ist in Emacs 21 enthalten. Die dort enthaltenen Gnus-Versionen unterscheiden sich (trotz der gleichen Nummer) in kleinen Details. So hat z.B. der Gnus 5.9 von Emacs 21.1 noch keine Unterstützung für Unifizierung von Zeichensätzen (siehe Glossar).
Wenn man XEmacs oder Emacs 20 benutzt, nimmt man am besten Gnus 5.10. Bei Emacs 21 kann man entweder das dort enthaltene Gnus 5.9 benutzen oder auf Gnus 5.10 updaten. Wegen der zahlreichen neuen Features, siehe GNUS-NEWS, ist ein Update meist empfehlenswert. Gnus 5.10.8 funktioniert mit Emacs 20.7 und XEmacs 21.1 (und höher). Gnus 5.10.10 nur noch mit Emacs 21 und XEmacs 21.4 (und höher)
Dies sind Versionen mit neuen, teilweise ungetesteten Features. Alpha Versionen können in manchen Fällen bearbeitete Daten irreparabel beschädigen oder Mails verlieren (man sollte eine gute und funktionierende Backup-Strategie haben). Sie sollten in der Regel nur von Entwicklern eingesetzt werden, daher auch die oft gebräuchliche Bezeichnung Entwicklerversion. Emacs 23.0.* (CVS) und No Gnus3 sind in diesem Stadium. No Gnus funktioniert mit Emacs 21.1 und XEmacs 21.4 (und höher).
Oort Gnus war die Entwicklungslinie, die als Gnus 5.10 freigegeben wurde.
CVS ist ein System zur Versionskontrolle, das in vielen Software-Projekten eingesetzt wird. Der Begriff wird daher oft synonym zu Entwicklerversion verwandt. HEAD bzw. CVS HEAD bezeichnet dabei die Hauptentwicklungslinie (korrekter ist die Bezeichnung trunk).
Bei manchen Projekten wird jede Nacht ein Abzug der aktuellen CVS-Version erzeugt und als Paket zur Verfügung gestellt. Diese nennt man nightly snapshot.
Zustand irgendwo zwischen alpha und stable. Näher in Richtung stable gehen die als gamma oder RC (release candidate) bezeichneten Versionen. XEmacs 21.5 ist eine Beta-Version.
Zum Status (stabil oder Entwicklerversion) der genannten Emacs- und Gnus-Versionen: Siehe Versionslehre.
sort-coding-systems
von Emacs 21.3 und 21.4). Verhindern kann man das mit
rs-sort-coding-systems-21-3-fix.el (siehe Zusatzpakete).
(Man könnte auch Latin-9 als Latin-1 behandeln lassen. Das ist jedoch nicht empfehlenswert, da sich das Problem einfach beheben lässt.)
Emacs 20 ist schon sehr veraltet. Wer jedoch noch Emacs 20.7
installiert hat und nicht auf Emacs 22 oder Emacs 21 upgraden
will, kann dennoch Gnus 5.10.8 einsetzen (Gnus > 5.10.8 unterstützt
Emacs 20 nicht meht). Emacs 20 kann keine Bilder anzeigen und
kennt Latin-9 nicht. Es gibt ein Zusatzpaket (Mule-UCS) mit dem
Emacs 20 auch UTF-8 kann.
Bei Emacs 22 und höher gibt es keine nennenswerten Einschränkungen.
Emacs 21 hat unter Windows, im Gegensatz zu Emacs 22 und XEmacs 21, keine Tool-Bar (Button-Leiste unter der Menü-Leiste) und keine Unterstützung zur Inline-Darstellung von Graphiken (mit Gnus können X-Faces und Smileys daher nicht graphisch dargestellt werden).
Grundvoraussetzung ist, dass XEmacs mit MULE kompiliert wurde. Unter Windows unterstützt XEmacs 21.4 kein MULE.
Die UTF-8-Unterstützung ist nicht so weit, wie die von Emacs. Sie umfasst bei XEmacs 21.4 auch noch nicht alle Latin-*-Charsets. Es ist anscheinend nicht möglich, mit XEmacs 21.4 (oder 21.5) UTF-8 zu versenden. Offiziell unterstützt XEmacs 21.4 Unicode nicht.
Zur Unifizierung und für Latin-9 muß man latin-unity
installieren und aktivieren. Unifizierung ist nur innerhalb der
Latin-*-Charsets möglich. Sobald dies nicht mehr geht (weil
ein Latin-*-Charset nicht ausreicht), wird die Nachricht
gesplittet, anstatt UTF-8 zu benutzen.
latin-unity nicht
verwendet werden.
latin-unity und ein wenig Zusatzcode
(rs-xemacs-21-4-gnus-5-8.el) ist es anscheind möglich, alle
ausgehenden Artikel nach Latin-9 umzuwandeln (sofern dies möglich ist).
FIXME: Details, Download, Test
latin-unity
installieren und aktivieren. Ob die Unifizierung und die
UTF-8-Unterstützung besser funktioniert als bei XEmacs 21.4, ist nicht
bekannt.
Was gehört in welche Start-Datei (~/.emacs bzw. init.el vs. ~/.gnus.el)?
In die ~/.gnus.el (darf auch ~/.gnus heissen, wobei
~/.gnus.el inzwischen von Lars bevorzugt wird7) gehören, wie der Name schon
sagt, Gnus-Variablen. Die ~/.gnus.el wird bei jedem Start von
Gnus ausgewertet. Man kann ein Neu-Einlesen bei laufendem Gnus
erzwingen: r (gnus-group-read-init-file).
Informationen über abonnierte Gruppen, Topics, Gruppen-Parameter,
gelesene Artikel, ... werden beim Beenden von Gnus (mit q)
oder beim Drücken von s (gnus-group-save-newsrc) in
~/.newsrc.eld abgespeichert. Anstatt ~/.newsrc.eld kann
dies Datei auch ~/.newsrc-servername.eld heissen.
Beim Start von Emacs bzw. XEmacs (also noch vor dem Gnus-Start) wird ~/.emacs (oder ~/.emacs.el) bzw. ~/.xemacs/init.el ausgewertet. Dahin gehören allgemeine Emacs- bzw. XEmacs-Einstellungen. Unten folgt ein Beispiel, wie man die Start-Dateien bei paralleler Verwendung von Emacs und XEmacs organisieren kann. Siehe Init File.
Falls man den load-path anpassen möchte, um z.B. eine
aktuellere Gnus-Version als die mitgelieferte zu benutzen, muß dies
in diesen Dateien gemacht werden. Wenn ~/.gnus.el geladen wird,
ist es schon zu spät, da dann die andere Gnus-Version schon benutzt
wird.
Was sind nun Gnus-Variablen? Gnus-Variablen sind solche die im Gnus-Paket definiert werden. Man erkennt sie meist am Präfix: ‘gnus-’8, ‘message-’9 (das sind die wichtigsten), ‘mm-’, ‘mml-’10 oder ‘nn’11 (‘nnmail-’, ‘nnimap-’, ‘nnfolder-’, ‘nnml-’, ...). Es gibt (insbesondere in Gnus 5.10) noch ein paar andere12.
Andere Variablen, auch wenn sie etwas mit Gnus zu tun haben oder
hauptsächlich von Gnus verwendet werden, sollten nicht in der
~/.gnus.el gesetzt werden (z.B. user-mail-address).
(Viele, aber nicht alle) Variablen kann man auch über Customize (siehe Menu Options) einstellen. (Vorteil: Weniger anfällig für Syntaxfehler. Nachteil: Meist weniger übersichtlich.) Diese Variablen werden in ~/.emacs (Emacs, man kann aber auch über die Variable custom-file etwas anderes einstellen) bzw. ~/.xemacs/custom.el (XEmacs) gespeichert. Diesen Customize-Block sollte man nicht von Hand ändern, sondern nur über Customize. Variablen, die der User nicht über Customize anpassen kann, sind in der Regel nicht dafür vorgesehen (z.B. interne Variablen).
Neben den oben genannten Dateien, die dem User vorbehalten sind, gibt es noch die Site-spezifischen Dateien: site-lisp/gnus, site-lisp/site-start.el, site-lisp/default.el, siehe Startup Files.
Ein Vorschlag, wie man die Start-Dateien bei paralleler Verwendung von Emacs und XEmacs organisieren kann:
~/.emacs:
(message "In `~/.emacs'...")
;; Zuerst laden wir die gemeinsamen Einstellungen:
(let ((file "~/.emacsen-common.el"))
(if (file-readable-p file)
(load-file file)
(message "File `%s' not found, skipped." file)))
;; Unifizierung (kann ab Emacs 21.3 entfallen):
(require 'rs-gnus-unify)
;; Emacs erzeugt das Verzeichnis `~/.emacs.d/'.
;; Legen wir das custom-file auch dort ab:
(setq
;; [...]
custom-file "~/.emacs.d/custom.el")
(when (file-readable-p custom-file)
(load-file custom-file))
(message "In `~/.emacs'...done.")
;; [...]
~/.xemacs/init.el:
(message "In `~/.xemacs/init.el'...")
;; Falls ~/.xemacs/init.el existiert, ignoriert XEmacs `~/.emacs'.
;; Zuerst laden wir die gemeinsamen Einstellungen:
(let ((file "~/.emacsen-common.el"))
(if (file-readable-p file)
(load-file file)
(message "File `%s' not found, skipped." file)))
(setq
;; [...]
custom-file "~/.xemacs/custom.el")
;; [...]
(message "In `~/.xemacs/init.el'...done.")
~/.emacsen-common.el:
(message "In `~/.emacsen-common.el'...")
;; Gemeinsame (X)Emacs Einstellungen
;;
;; Gemeinsame, zusaetzliche Lisp-Files (nicht kompilieren!) in `~/lisp':
(setq load-path (nconc (list "~/lisp") load-path))
;; hier laden, wenn noetig
;;
(setq
user-full-name "Vorname Nachname"
user-mail-address "name@mein-provider"
;; [...]
;; Gnus als Default-Mailer in (X)Emacs:
mail-user-agent 'gnus-user-agent)
(message "In `~/.emacsen-common.el'...done.")
(cond
((featurep 'xemacs);; XEmacs
;; [... XEmacs-Einstellungen ...]
(turn-on-font-lock)
(setq
;; [...]
;; Keine Migration nach `init.el':
load-home-init-file t
;; getrennte custom files:
custom-file "~/.xemacs/custom.el"))
(t;; Emacs
;; [... Emacs-Einstellungen ...]
(global-font-lock-mode t)
;; Unifizierung (kann ab Emacs 21.3 entfallen):
(require 'rs-gnus-unify)
(setq
;; [...]
custom-file "~/.emacs.d/custom.el")))
;; Gemeinsame (X)Emacs Einstellungen
;;
;; Gemeinsame, zusaetzliche Lisp-Files (nicht kompilieren!) in `~/lisp':
(setq load-path (nconc (list "~/lisp") load-path))
;; hier laden, wenn noetig:
;;
(setq
user-full-name "Vorname Nachname"
user-mail-address "name@mein-provider"
;; [...]
;; Gnus als Default-Mailer in (X)Emacs:
mail-user-agent 'gnus-user-agent)
(when (file-readable-p custom-file)
(load-file custom-file))
Am einfachsten geht dies mit Hilfe des eingebauten Paketmanagers; je nach XEmacs-Version findet sich dieser unter Tools oder unter Options. Man legt zuerst über den Unterpunkt Add Download Site einen ftp-Server fest, von dem die Software bezogen werden soll, dann wählt man den Unterpunkt List and Install. Es erscheint ein Buffer, der es erlaubt, Pakete zu aktualisieren bzw. neu zu laden. Wie dies genau funktioniert steht am Ende dieses Buffers. Eventuell muss man die Liste mit Update Package Index zuerst aktualisieren. Siehe auch Installing Packages.
Emacs hat kein Paketmanagement, bringt aber schon sehr viele Pakete mit. Eine große Auswahl von weiteren Zusatzpaketen findet sich in der Emacs Lisp List. Umfangreiche Pakete enthalten eine Installationsanleitung in der Datei INSTALL oder README. Bei kleineren Paketen ist die Anleitung meist in der Lisp-Datei (‘*.el’) als Kommentar enthalten.
Zusatzpakete werden sinnvollerweise im Verzeichnis
site-lisp13 oder einem
Unterverzeichnis davon installiert. Dann wird der
load-path14 automatisch angepasst.15
Möchte man ein Paket im HOME-Verzeichnis installieren, muss man
Emacs das Paket-Verzeichnis noch bekannt machen. Angenommen ein Paket
wird unter ~/lisp/ installiert, muss load-path
entsprechend erweitert werden. In die ~/.emacs schreibt man:
(add-to-list 'load-path "~/lisp/paketverzeichnis")
Einzelne Lisp Dateien können z.B. unter ~/lisp/ gesammelt
werden
Auch in diesem Fall wird load-path in der ~/.emacs
erweitert:
(add-to-list 'load-path "~/lisp")
In rs-gnus-unify.el (Abschnitt “Commentary”) ist detailliert beschrieben, wie man die Unifizierung für Emacs 21.1 und 21.2 einschaltet. Eine deutsche Übersetzung der Anleitung steht ebenfalls zur Verfügung.
rs-gnus-unify.el sorgt (bei genauer Beachtung der Anleitung)
dafür, dass die benötigten Dateien geladen werden und die Unifizierung
eingeschaltet wird. Die eigentliche Funktionalität steckt in
ucs-tables.el und utf-8.el.
Beim Versenden von Unicode-Zeichen wird bei Emacs 21.3 und 21.4 in
bestimmten Fällen utf-16-be anstatt utf-8 benutzt. Dieses Problem
tritt nicht bei allen Unicode-Zeichen und nicht bei allen
Locale-Einstellungen auf. Der Grund ist ein Fehler in der Funktion
sort-coding-systems.
rs-sort-coding-systems-21-3-fix.el
ersetzt die fehlerhafte Funktion durch eine berichtigte, falls dies
erforderlich ist.
Emacs 21 kennt nicht alle iso-8859- und Windows-12xx-Zeichensätze.
rs-ucs-coding-system.el
(basierend auf Simon Krahnkes sk-ucs-coding-system.el) stellt
u.a. diese Zeichensätze zur Verfügung. Die Installationsanleitung
und weitere Erläuterungen finden sich in der Datei selbst.
rs-windows-1252.el ist damit veraltet und sollte nicht mehr verwendet werden.
latin-unity Paket
Man muss latin-unity installieren und zusätzlich
(latin-unity-install)
in die init.el schreiben. Das genaue Lesen der Dokumentation zu
latin-unity ist sehr zu empfehlen.
Um Gnus (5.10) mit XEmacs zu verwenden, müssen zumindest folgende XEmacs-Pakete installiert werden: ‘gnus’, ‘w3’, ‘mh-e’, ‘mailcrypt’, ‘rmail’, ‘eterm’, ‘mail-lib’, ‘xemacs-base’, ‘sh-script’ und ‘fsf-compat’, Siehe XEmacs.
Adressenverwaltung und vieles mehr.
Zum Einfügen von Zitaten.
(standard-display-european t);; don't use this!
ist veraltet und führt zu Problemen, weg damit! Bei Debian war diese Einstellung (früher?) enthalten. Am besten die relevanten Dateien überprüfen (~/.emacs und find /etc/emacs*/ -name '*.el').
Gnus 5.8.8 funktioniert nicht gut zusammen mit Emacs 21.x. Man sollte Gnus 5.8.8 entfernen und das in Emacs 21.x enthaltene Gnus 5.9 verwenden. (Bei Debian gab es ein separates Gnus-5.8-Paket, das zur Verwendung mit Emacs 20.7 gedacht war. Dieses Paket sollte man deinstallieren, wenn man Emacs 21 benutzt.)
(Fast alles in Englisch.)
locale(1). Man kann sie in ~/.profile oder
~/.xsession eintragen
LC_CTYPE="wert"; export LC_CTYPE;
(dann betreffen die Änderungen nicht nur (X)Emacs sondern auch andere Anwendungen) oder beim (X)Emacs-Start angeben:
LC_CTYPE="wert" emacs
locale-Einstellungen entsprechen unter
Windows vermutlich die Länder- bzw. Spracheinstellungen. Ob diese
eine analoge Wirkung haben ist mir nicht bekannt.
set-language-environment wirkt sich auf die
ganze (X)Emacs-Session aus (z.B. Lesen und Schreiben von Dateien).
mm-coding-system-priorities betrifft nur
ausgehende Nachrichten. Diese Variable gibt es erst in Gnus 5.10 oder
Gnus 5.9 in Emacs ab 21.2. In Gnus 5.10 kann man anstelle von
coding-systems (‘mule-utf-8’, ‘iso-latin-*’,
...) auch MIME-Charsets (‘utf-8’,
‘iso-8859-*’, ...) angeben.
In XEmacs wird mm-coding-system-priorities erst ab Gnus 5.10.8
berücksichtigt.
locale: LC_CTYPE="de_DE@euro"
(set-language-environment "Latin-9")
(setq mm-coding-system-priorities
'(iso-latin-9 iso-latin-1 mule-utf-8))
locale: LC_CTYPE="de_DE"
(set-language-environment "Latin-1")
(setq mm-coding-system-priorities
'(iso-latin-1 iso-latin-9 mule-utf-8))
locale: LC_CTYPE="de_DE.utf8"
(In Emacs ab 21.3.)
(set-language-environment "UTF-8")
(setq mm-coding-system-priorities '(mule-utf-8))
Zum Status (stabil oder Entwicklerversion) der genannten Emacs- und Gnus-Versionen: Siehe Versionslehre.
Die beiden Datei emacs-22.n-bin-i386.zip (n steht für die Versionsnummer) herunterladen und in einem beliebigen Verzeichnis (z.B. C:\Programme\GNU) entpacken.17
Die beiden Dateien emacs-nn.n-fullbin-i386.tar.gz und emacs-nn.n-leim.tar.gz (nn.n steht für die Versionsnummer) herunterladen und in einem beliebigen Verzeichnis entpacken.18
Bitte die Hinweise in der GNU Emacs FAQ For Windows unbedingt beachten.
(Info-goto-node "(emacs)Mac OS"); <== Press C-x C-e here!
Schriftzeichen werden im Computer intern als Zahlen repräsentiert. Ein Charset (Zeichensatz) stellt dabei eine Übersetzungstabelle (Zahl <-> Zeichen) dar.
Da in jedem Text im Normalfall nur eine kleine Untermenge aller auf der Welt vorkommenden Schriftzeichen verwendet wird, hat man verschiedene Charsets definiert, die jeweils die in einem Kulturkreis häufiger vorkommenden Zeichen enthalten (siehe auch nächster Abschnitt), um weniger Speicherplatz pro Zeichen zu benötigen.
Als das EUR-Zeichen neu eingeführt wurde, brauchte man auch neue Charsets, die dieses Zeichen enthalten. Da es aus technischen Gründen nicht möglich war, einfach die bestehenden Zeichensätze um ein Zeichen zu erweitern, musste ein Zeichen weichen. Die ISO (International Organization for Standardization) entschied sich für das Currency-Zeichen (Dübel) und nannte den durch diese (und einige andere) Änderungen entstandenen neuen Zeichensatz ISO-8859-15 (aka Latin-9 oder Latin-0). Microsoft wählte stattdessen ein nicht druckbares Steuerzeichen19 aus, das dem EUR weichen musste und nannte diesen Zeichensatz Windows-1252.
Diese Übersicht würde ISO_8859-1(7) entnommen:
ISO-8859-1 Westeuropäische Sprachen (Latin-1)
ISO-8859-2 Osteuropäische Sprachen (Latin-2)
ISO-8859-3 Südosteuropäische und sonstige Sprachen (Latin-3)
ISO-8859-4 Skandinavische/baltische Sprachen (Latin-4)
ISO-8859-5 Latin/Kyrillisch
ISO-8859-6 Latin/Arabisch
ISO-8859-7 Latin/Griechisch
ISO-8859-8 Latin/Hebräisch
ISO-8859-9 Latin-1 angepaßt an Türkisch (Latin-5)
ISO-8859-10 Lappland/nordische/Eskimo Sprachen (Latin-6)
ISO-8859-11 Thai
ISO-8859-13 Baltische Sprachen (Latin-7)
ISO-8859-14 Keltische Sprachen (Latin-8)
ISO-8859-15 Westeuropäische Sprachen (Latin-9 = Latin-0)
ISO-8859-16 Einige Osteuropäische Sprachen (Latin-10)
Latin-9 ist eine Modifikation von Latin-1, die das EUR-Symbol enthält und Französisch und Finnisch (im Gegensatz zu Latin-1) voll abdeckt. Auf der Web-Seite von J. Korpela gibt viele es weiterführende Informationen zu Charsets.
Neben den Charsets für bestimmte Kulturkreise gibt es noch den Unicode Standard (ISO 10646). Dieser Standard definiert das Universal Character Set (UCS), das sämtliche Zeichen sämtlicher anderen Zeichensatzstandards enthält. UCS enthält Zeichen zur Repräsentation beinahe jeder bekannten Sprache. Unicode kann in verschiedenen Arten kodiert werden. Die bei Mail und News gebräuchlichste Kodierung wird UTF-8 genannt.
Die Unterstützung von UTF-8 in Gnus hängt vom verwendeten (X)Emacs ab. Bei XEmacs 21.4 und 21.5 wird UTF-8 nur sehr eingeschränkt unterstützt. In Emacs 21 ist die Unterstützung von UTF-8 wesentlich besser, so dass es für Europäer ausreicht. Die Unterstützung von CJK (Chinese, Japanese, Korean) ist aber noch nicht vollständig. Emacs 22 hat bereits eine recht gute ist die UTF-8-Unterstützung.
Es gibt für XEmacs Erweitungspakete für CJK, die mehr oder weniger gut mit Gnus zusammenarbeiten. Außerdem gibt es noch an diesen Sprachraum angepasste Gnus-Versionen, die zusammenfassend als Semi-gnus (siehe Other Gnus Versions) bezeichnet werden.20
Weitere Informationen zu Unicode findet man z.B. auf der Unicode Web-Seite und auf der Unicode Seite von Markus Kuhn.
(X)Emacs weiß nicht, dass ein Ä in ISO-8859-1 und ein
Ä in ISO-8859-15 der gleiche Buchstabe sind.21 Wenn beide in das gleiche Posting
sollen (eigener Text und Zitat des Vorredners), muss Gnus also beide
unterschiedlich kodieren, daher entstehen dabei
multipart/mixed-Postings. Gnus splittet also das Posting z.B. in
Latin-1- und Latin-9-Teile auf.
Unter Verwendung des Pakets ucs-tables.el bei Emacs
bzw. latin-unity bei XEmacs (siehe Zusatzpakete), kann (X)Emacs
feststellen, dass die beiden Äs der gleiche Buchstabe sind. Man
sagt, dass die beiden Äs unifiziert wurden. Je nach
Einstellung kann diese Unifizierung beim Lesen (aus einer Datei
oder von der Tastatur: on decode) oder beim Schreiben (on
encode) oder in beiden Fällen stattfinden. In Emacs ab 21.3 ist die
(on encode) Unifizierung schon von Haus aktiviert. Bei Emacs 21.1
und 21.2 kann man es leicht nachrüsten.
Falls ein ISO-8859-* Charset nicht ausreicht, wird bei
Emacs UTF-8 verwendet. XEmacs (bzw. latin-unity) beherrscht
das nicht, so dass die Nachricht dann gesplittet wird.
Unter Unifizierung verstehen wir die Unifizierung von ISO-8859-*-Charsets unter Einbeziehung von UTF-8. Es gibt auch noch Unifizierung von CJK (nach UTF-8), auf die hier nicht eingegangen wird.
Die Unterstützung verschiedenster Zeichensätze in (X)Emacs wird durch
MULE ("MULti-lingual Enhancement to GNU Emacs") realisiert.
Bei Emacs (ab Version 20) ist MULE fest eingebaut und es kann
auch nicht abgeschaltet werden. Ob eine XEmacs-Variante
MULE-fähig ist, hängt von Optionen während der Kompilierung ab
und kann nachträglich nicht geändert werden.
Man kann über M-: (featurep 'mule) RET herausfinden, ob das eigene
System MULE unterstützt (falls ja, steht t im
Minibuffer, ansonsten nil).
[1] Wenn beide Emacs-Varianten gemeint sind, also Emacs und XEmacs, verwenden wir den Term (X)Emacs.
[2] Im README von Gnus 5.10 bezeichnet Lars diese Version als beta. Erst die in Emacs eingebaute Version erhält die Bezeichnung stable.
[3] So heißt die derzeitige Entwicklerversion.
[4] Bei Windows 98 und Windows NT 4.0 (und früheren Versionen) steht Latin-9 vermutlich nicht zur Verfügung.
[6] Wenn man im XEmacs nichts bezüglich iso-8859-15 einstellt, wird stumpf iso-8859-1 verwendet
[7] Mit .el hat z.B. den Vorteil, dass sie von (X)Emacs sofort als Emacs-Lisp erkannt wird (ohne Cookie).
[8] Allgemeine Gnus-Variablen
[9] Das Message-Paket ist für das Schreiben (Mail
und News) zuständig. Es ist zwar ein Teil von Gnus, könnte aber
auch separat eingesetzt werden. Deshalb gibt es ein paar Variablen
sozusagen doppelt, z.B. gnus-signature-separator und
message-signature-separator: gnus-signature-separator
kommt bei der Darstellung (Lesen) von Artikeln zur Anwendung,
message-signature-separator beim Verfassen von Artikeln.
[10] Dinge, die mit dem Erstellen, Betrachten oder Speichern von Attachments oder PGP/GPG zu tun haben.
[11] Oft sind dies eigentlich Server-Variable, siehe Server Variables.
[12] Z.B. binhex-, canlock-, dig-,
earcon-, fill-, gnus-, imap-, mail-,
mailcap-, message-, mm-, mml-,
mml2015-, nn, pgg-, rfc1843-, sieve-,
smiley-, smime-, spam-, starttls-,
uudecode-, ...
[13] site-lisp befindet sich unter
prefix/share/emacs also
z.B. /usr/local/share/emacs/site-lisp
[14] Der load-path ist eine Liste von
Verzeichnissen, in denen (X)Emacs nach Dateien sucht, die er laden
kann.
[15] Das geschieht über die Datei subdirs.el in diesem Verzeichnis. Um dies zu unterbinden, kann man in dem betreffenden Verzeichnis eine Datei .nosearch anlegen.
[16] Bourne-Shell Syntax (sh, ksh, bash, ...)
[17] Das sieht dann z.B. so aus, wenn man in C:\Programme\GNU entpackt: C:\Programme\GNU\emacs-22.n\bin, C:\Programme\GNU\emacs-22.n\leim und so weiter. Emacs wird mit C:\Programme\GNU\emacs-22.n\bin\runemacs.exe gestartet, oder man ruft einmalig C:\Programme\GNU\emacs-22.n\bin\addpm.exe auf, wodurch unter anderem Einträge im Startmenü erzeugt werden.
[18] Das sieht dann z.B. so aus, wenn man in C:\ entpackt: C:\emacs-nn.n\bin, C:\emacs-nn.n\leim und so weiter. Emacs wird mit C:\emacs-nn.n\bin\runemacs.exe gestartet, oder man ruft einmalig C:\emacs-nn.n\bin\addpm.exe auf, wodurch unter anderem Einträge im Startmenü erzeugt werden.
[19] Es handelt sich um das Zeichen
0x80, das in Gnus als \200 dargestellt wird, falls
(X)Emacs diesen Zeichensatz nicht beherrscht. Windows-1252 enthält
insgesamt 27 Zeichen, die nicht in iso-8859-1 vorkommen.
[20] Bei Fragen zu diesen Themen wendet man sich am besten an die internationalen Newsgroups zu (X)Emacs und Gnus (comp.emacs, comp.emacs.xemacs, gnu.emacs.help, gnu.emacs.gnus) oder an eine geeignete Mailingliste.
[21] Warum (X)Emacs normalerweise die beiden Zeichen als unterschiedlich betrachtet, liegt an der Geschichte: die Unterstützung für verschiedene Zeichensätze wurde von Asiaten gemacht, die keinen Bedarf dafür hatten, dass ein und dasselbe Zeichen in zwei verschiedenen Zeichensätzen vorkommen konnte.