2013-06-02 9 views
9

Ich schreibe meistens meine Dokumentation in HTML mit Emacs als mein Hauptredakteur. Mit Emacs können Sie interaktiv den aktuellen Puffer mit dem Befehl ispell-buffer überprüfen.Wie kann ich eine Rechtschreibprüfung für mehrere Sprachen in Emacs durchführen?

Da ich zwischen mehreren Sprachen umschalte, habe ich einen HTML-Kommentar am Ende der Datei, der das Hauptwörterbuch und das persönliche Wörterbuch für diese Datei angibt, z. für Norwegisch (norsk) verwende ich das folgende Wörterbuchpaar:

<!-- Local IspellDict: norsk --> 
<!-- Local IspellPersDict: ~/.aspell/personal.dict --> 

Das funktioniert super.

Allerdings habe ich manchmal einen Absatz in einer anderen Sprache (z. B. Englisch) in einem ansonsten norwegischen Dokument eingebettet. Beispiel:

<p xml:lang="en">This paragraph is in English.</p> 

Die Rechtschreibprüfung natürlich Flagge alle die Worte in einem solchen Absatz als Fehlbuchstabierungen (da das Wörterbuch Norwegisch Wörter nur enthalten).

Um dies zu vermeiden, habe ich versucht, ein „british“ Wörterbuch auf das Dokument, wie dies hinzuzufügen:

<!-- Local IspellDict: british --> 
<!-- Local IspellDict: norsk --> 
<!-- Local IspellPersDict: ~/.aspell/personal.dict --> 

Leider ist dies nicht funktioniert. Das "britische" Wörterbuch wird einfach ignoriert.

Meine bevorzugte Lösung würde ein zusätzliches Wörterbuch laden und zusammen mit dem Hauptwörterbuch zur Rechtschreibprüfung verwenden. Ist das möglich?

Allerdings bin ich auch an einer Lösung interessiert, die mich Paragraphen für nicht, die Rechtschreibprüfung ist, markieren lassen. Es ist nicht ideal, aber es würde verhindern, dass gültige englische Wörter als Rechtschreibfehler markiert werden.

PS: Ich habe auch bei der Antwort auf diese Frage sah: Multilingual spell checking with language detection, aber es ist viel breiter und geht nicht auf die spezifische Verwendung Emacs für das Erledigen der Rechtschreibprüfung ispell.

+1

mögliche Duplikate von [Wie definiere ich zwei Wörterbücher in Emacs für den LaTeX-Modus?] (Http://stackoverflow.com/questions/11361603/how-to-define-two-ispell-dictionaries-in-emacs-for- -latex-mode) –

Antwort

1

Versuchen ispell-Multi und flyspell-xml-lang http://www.dur.ac.uk/p.j.heslin/Software/Emacs/

Sie mehrere Instanzen von ispell laichen können, und verwenden Sie das xml: lang-Tag, welche Sprache zu überprüfen, um zu entscheiden.

+0

Danke für den Vorschlag. Ich habe 'ispell-multi' und' flyspell-xml-lang' geladen und die englischen Absätze mit 'xml: lang =" en "' versehen, ignoriert aber immer noch das "britische" Dikton. Es scheint ein Stück zu fehlen. –

Verwandte Themen