Diese Seite entsteht aus Frust über die nicht vorhandenen Anleitungen für Emacs für Windows

Leider findet man im Internet und auch im Buchhandel kaum vernünftige Anleitungen in deutscher Sprache.
Aus diesem Grunde werde ich versuchen meine Erfahrungen hier wiederzugeben, so beschränkt sie auch sein mögen!
Wie ihr merken werdet, schreib ich hier so wie ich selber mit dem Emacs weiterkomme, also nicht zuviel erwarten ;-)
Mehr als eine kleine Einführung kann das Ganze hier natürlich nicht darstellen. Wer es nicht glauben will kann ja mal im englisch sprachigen Bereich suchen.
Für Anregungen, Tipps und ein paar Hilfen könnt ihr mir unter Thorsten@geier0815.de eine Mail zukommen lassen.

Welche Gründe gibt es überhaupt sich mit Emacs für Windows zu beschäftigen?

1.) Emacs ist der genialste Editor
2.) Emacs kann fast alles
3.) Man kann Emacs beliebig an seine Bedürfnisse anpassen
4.) Der für mich wichtigste Punkt: Es gibt ihn für Linux UND Windows d.h. man muß sich nicht an einen anderen gewöhnen nur weil man ein anderes Betriebssystem benutzen will/muß
5.) Allein das Syntaxhighlighting ist schon eine echte Hilfe, wenn man Html schreibt oder programmiert

Was benötigt man?

Als erstes gute Nerven und eine gewiße Leidensfähigkeit ;-)
Desweiteren natürlich den Emacs für Windows, den man hier findet
Wir suchen dort die Datei emacs-21.3-fullbin-i386.tar.gz und laden sie uns herrunter. Zum Entpacken benötigen wir das Programm WinRAR, das wir als Demoversion bei den einschlägigen Quellen herunterladen können

Der erste Start

Wenn wir nun alles haben, können wir uns ans Entpacken machen, wobei wir uns überlegen müßen wohin wir das Ganze haben wollen. Nach dem Entpacken haben wir ein Hauptverzeichniß und einige unixtypische Unterverzeichnisse. Wir gehen nun ins Verzeichniß /bin und starten runemacs.exe und voila Emacs ist gestartet.
Als erstes sehen wir den schönen Willkommenstext und den Hinweis auf die eingebaute Hilfe und das Tutorial. Sobald wir eine Taste drücken öffnet sich ein neues Fenster mit einem merkwürdigem Text, was wir ja so nicht wollten. Aber keine Sorge, das ist schon richtig so, denn Emacs erwartet eigentlich das man eine Datei öffnen will und ihm das auch sagt, sonst öffnet er eben diese Standarddatei.

Ein bißchen Syntax oder "Hilfe wie mach ich hier was?"

Die ersten Schritte erscheinen einem ein bißchen merkwürdig und man braucht auch eine Weile um sich daran zu gewöhnen, aber keine Sorge man findet das Ganze nach kurzer Zeit recht logisch.
Am häufigsten braucht man die STRG Taste in Kombination mit Anderen. Im Normalfalle wird das als C-(irgendeineTaste) dargestellt. Wenn also irgendwo steht
C-x s
dann bedeutet das man soll STRG und x gleichzeitig drücken, dann Beide loslassen und s drücken. Das C steht also als Kürzel für CTRL (control) oder eben auf der deutschen Tastatur für STRG.
Die nächst häufige Taste ist die Meta Taste. Wer jetzt verzweifelt weil er sie auf seiner Tastatur nicht findet der sei beruhigt. Gewöhnlich ist damit die Alt Taste gemeint, ansonsten nimmt man die Esc Taste. Die Syntax ist die gleiche wie bei der STRG Taste, d.h. wenn irgendwo
M-x shell
steht, bedeutet das, daß man erst Alt und gleichzeitig x drückt und danach das Wort shell eingibt.

Die nächsten Schritte

Wir sehen ja immer noch den merkwürdigen Text, dagegen sollte man echt mal was tun! Machen wir jetzt auch. Dazu öffnen wir eine neue Datei mittels C-x C-f (noch mal zur Wiederholung: STRG und x gleichzeitig drücken, loslassen und STRG und f gleichzeitig drücken)
Der Emacs erwartet nun das wir einen Dateinamen eingeben um die entsprechende Datei zu öffnen. Wenn wir einen Namen eingeben den es noch nicht gibt, dann wird diese Datei angelegt. Aus diesem Grund gibt es keinen explizieten "Datei erstellen" Befehl. So, sehr schön wir könen nun also Dateien erstellen. Achtung, wir sind bei der Namensvergabe nicht an die Windowsüblichen Namen gebunden, da Emacs aus dem Linuxbereich kommt. Das kann zu Schwierigkeiten führen, die ich hier aber nicht näher erläutern will.
Wir haben, experiementierfreudig wie wir nun mal sind, bestimmt schon ein bißchen Text eingegeben und wollen das Ganze nun abspeichern. Kein Problem, der Befehl dafür lautet
C-x C-s

Kurz was prinzipieles

Ganz Pfiffige haben sicher schon gemerkt, das man diese Aufgaben auch wunderbar mit der Maus machen kann. Ist im Prinzip auch richtig und schön, aber wenn man am schreiben ist, nervt jeder Griff zur Maus und aus diesem Grund erläuter ich hier die Tastenkürzel wenn ich denn weiß wie es geht (ich weiß es häufig genug nicht; siehe Einleitung)

Eine kleine Übersicht über die Tastenkürzel

Das wichigste ;-)

C-gBefehle abbrechen !!!! Hilft auch wenn Emacs hängt
   

Zeichenweise bewegen

C-p Zeile hoch
C-nZeile runter
C-bnach links
C-fnach rechts
   

Block- und Wortweise bewegen

M-fWort vor
M-bWort zurück
C-aAnfang der Zeile
C-eEnde der Zeile
M-aAnfang des Satzes
M-eEnde des Satzes
M-<Anfang des Textes
M->Ende des Textes
   

Markierung

C-SPACEMarkierung setzen
C-u C-SPACEZur Markierung springen
   

Löschen

BACKSPACEZeichen vor dem Cursor löschen
ENTFZeichen unter dem Cursor löschen
M-BACKSPACELöschen bis zum Wortanfang vor dem Cursor
M-dLöschen Wort nach dem Cursor
C-kLöschen von Cursor bis Zeilenende
M-kLöschen bis zum Satzende
Beginn mit C-SPACE makieren, zum Ende gehen C-wMarkieren und löschen ohne Maus
   

Gelöschtes Wiederherstellen

C-yGelöschten Text wieder herstellen
M-yFrüher gelöschten Text wiederherstellen durch Taben
C-x uGelöschten Text an der aktuellen Cursorposition einfügen
   

Dies und Das

C-lDen Text unter dem Cursor in die Mitte setzen
C-u und Anzahl und weiterer BefehlEingabe von Zahlen für die Befehle z.B. C-u danach 5 und C-b gibt 5 das Zeichen aus
C-x und 22 Fenster
C-x und 11 Fenster
C-u und AnzahlZeichen in beliebiger Anzahl einfügen


Wo man Hilfe findet

Leider gibt es kaum deutschsprachige Hilfe zum Emacs im Internet. An Büchern ist leider auch nur sehr wenig zu finden. Was ich aus eigener Erfahrung empfehlen kann, ist das Buch "GNU Emacs kurz und gut" aus dem O’Reilly Verlag. Es ist allerdings nur eine Referenz der Tastenkürzel die beim Emacs verwendet werden. Zu vielen Fragen über Emacs kann man Hife in der Newsgroup de.comp.editoren
und zu Gnus in der Group de.comm.software.gnus finden.
Meine Empfehlung ist, erstmal unter z.B. Googel in den Groups zu suchen ob die Frage, die man hat, nicht schon beantwortet wurde. Die meisten Nutzer dieser Groups haben keine Meinung immer wieder die gleichen Fragen zu beantworten, was ich auch sehr gut verstehen kann.


Gnus zum Lesen einrichten und starten

Nachdem wir uns nun mit den grundliegenden Dingen beschäftigt haben, wollen wir mal zu den Sachen kommen die uns wirklich dazu gebracht haben Emacs haben zu wollen. Fast jeder Linuxmensch haut uns die Ohren voll, wie genial Emacs als Newsreader ist. Nun wollen wir doch mal schaun ob die Typen recht haben!

Als erstes müßen wir an die .emacs ran. Bei der normalen Installation legt Windows diese im Verzeichniß C:\ ab. Wir öffnen die Datei und fügen die Zeile
(setq gnus-select-method ' (nntp "news.Dein Anbieter.de"))
in die Datei ein.

Häää??? Was soll das denn sein?
Das ist gar nicht so kompliziert wie es aussieht. Wir haben nur unserem Emacs mitgeteilt wo er nach News suchen soll. In unserem Falle setzen wir natürlich den Newsserver unseres Providers ein. Oder irgend einen freien Anbieter(sollte wer einen brauchbaren finden möge er sich bei mir melden).
Wenn wir nun den Emacs nach dem Abspeichern aufrufen, können wir den Gnus mittels M-x gnus starten. Nanu, was ist das? Der Rechner röddelt und rattert, lädt etliche KB aus dem Internet und das nur um uns einen fast leeren Bildschirm zu zeigen? Da stimmt doch was nicht? Doch, doch, hat alles seine Richtigkeit!!! Gnus hat sich jetzt die Liste aller verfügbaren Groups herrunter geladen, aber da er in der Standardeinstellung nur die abonnierten, ungelesenen Groups anzeigt, ist klar das er uns nichts auf den Bildschirm ausgibt. Also wollen wir mal ein paar Groups aussuchen! AA hilft uns hier weiter. Wir sehen nun alle auf dem Server verfügbaren Groups. So weit, so gut, aber was fangen wir nun damit an? Klarer Fall, wir abonnieren die Groups die uns interessieren mit u. Um nun auch noch zu sehen was wir alles abonniert haben, lassen wir uns nur diese Groups durch AM anzeigen. Wir manövrieren uns mit den Pfeiltasten auf die Group die wir anschauen wollen und drücken SPACE (soll heißen die Leertaste) und sehen das sich das Fenster ändert: Oben ein Fenster mit den Headern und unten ein Fenster mit den Inhalten. In den Nachrichten können wir auch mit der SPACE Taste blättern, am Ende der Nachricht springt Gnus dabei dann zur nächsten oder wenn es die letzte einer Group war springt er dann zur nächsten ungelesenen Nachricht der nächsten Group. Verlassen können wir die Nachrichtenansicht genauso wie die Gruppennansicht durch q

Da Gnus uns nur die bisher ungelesenen News anzeigt, kann es ja nun passieren, das wir Nachrichten nicht mehr wiederfinden. Die Lösung ist recht simpel: Mit AM lassen wir uns alle abonierten Gruppen anzeigen und geht dann in die entsprechende rein. Ob man dann alles per Hand durchsucht oder aber die automatische Suche benutzt ist geschmacksache.
Wir haben ja nun keine Lust die ganzen Threads durchzulesen, die uns beim ersten Abonnieren einer Gruppe geliefert werden, lernen wir nun wie man ein sogenanntes "catch-up" durchführt. Wenn wir im Gruppenfenster sind ist die Taste c die Wahl des Mittels. Wie man die Abfrage, ob wir sicher sind, behandelt, weiss wohl jeder. Sind wir schon in der Threadanzeige, hilft uns M C-c weiter.
Manchmal wird man einen Artikel davon ausschliesen wollen, dann ist M-u das was wir suchen. Dies markiert einen Artikel als ungelesen.
Wir müssen für einen Refresh der Gruppen in der Gruppenansicht nur g drücken, ist ja manchmal auch ganz nett, am Puls der News zu bleiben ;-)

Gnus zum Schreiben einrichten

Wir wollen ja nicht nur News lesen, sondern auch posten. Ich hoffe Dir ist klar welche Regeln Du dabei zu beachten hast. Ansonsten lies dir noch mal die 'Netiquette' durch. Du findest Sie in der Group 'de.newusers.infos'. Der erste Schritt ist nun den E-Mail-Client einzurichten. Dazu wieder mal ein paar Zeilen die Du in deine .emacs eintragen mußt:

Gnus Grundeinstellungen

(setq user-mail-address "Deine Adresse@Dein Anbieter.de")
(setq user-full-name "Dein Vor- und Nachname")
(setq message-syntax-checks ' ((sender . disabled)))
(setq message-generate-headers-first t)

Mails empfangen

Bei diesen Einstellungen wird das Passwort vom Benutzer abgefragt.
(setenv "MAILHOST" "pop.Dein Anbieter.de")
(setq rmail-primary-inbox-list ' ("po:Dein Benutzername") rmail-pop-password-required t)

Mails senden

(setq message-send-mail-function 'smtpmail-send-it
send-mail-function 'smtpmail-send-it
smtpmail-smtp-server "mail.Dein Anbieter.net"
smtpmail-local-domain nil
smtpmail-debug-info t)


Dreier Teilung des Fensters bei Gnus

In meinen Augen eine sehr feine Sache ist die Dreierteilung des Fensters, da sie sehr zur Übersicht beiträgt.

(gnus-add-configuration '(article (horizontal 1.0 (vertical 25 (group 1.0) ) (vertical 1.0 (summary 0.15 point) (article 1.0) ))))
(gnus-add-configuration '(summary (horizontal 1.0 (vertical 25 (group 1.0) ) (vertical 1.0 (summary 1.0 point) ))))


Authentifizierung per Passwort

Einige Provider verlangen das wir uns auch zum Senden mit einem Passwort anmelden. Alles was ich zu dem Thema im Internet gefunden hab, war der Hinweiss auf eine "authinfo.el" , die unter Winsows nicht arbeitet (mal abgesehen davon das Sie nicht zu finden ist). Durch Ausprobieren hab ich aber mit der folgenden Zeile zumindest den Provider GMX zur Mitarbeit überreden können.

(setq smtpmail-auth-credentials '(("mail.Provider.de""Benutzername""Passwort")))

Signatur

Eine Signatur ist eine kleine Textzeile die an jeden Post und an jede Mail angehängt wird. Sie sollte 4 Zeilen nicht überschreiten. Kenntlich gemacht wird die Signatur durch zwei Gedankenstriche und ein Leerzeichen, woran man sich auch halten sollte, da man sich ansonsten in einigen Groups recht unbeliebt macht. Diese Zeichenfolge sorgt dafür, das ein Newsreader oder auch ein Mailprogramm die Signatur von dem restlichen Text unterscheiden kann und die Anzeige gegebenenfalls unterbinden kann.
Statt eines Textes kann auch ein Link in die Signatur eingebunden werden. Auch dieser muß zwischen die Anführungszeichen geschrieben werden.

(setq message-signature (quote "Hier Dein Text"))

Automatischer Zeilenumbruch

Eine praktische Sache ist der automatische Zeilenumbruch nach einer gewissen Anzahl von Zeichen. Mehr als 72 Zeichen sollte man nicht einstellen, da die Nachrichten sonst von einigen Programmen nicht vernünftig dargestellt werden können. Kleine Gemeinheit am Rande, der Zeilenumbruch funktioniert nur bei Wörtern, also beim Ausprobieren nicht wundern, das der Zeilenumbruch nicht funktioniert wenn man nur Zeichen aneinander reiht.

(add-hook 'message-mode-hook (lambda () (setq fill-column 72) (turn-on-auto-fill)))

Diese Seite wurde zuletzt am 03.01.2005 aktualisiert