Frage

Ich möchte den Befehl ispell-buffer in emacs verwenden. Es verwendet standardmäßig die englische Sprache. Gibt es eine einfache Möglichkeit, zu einem anderen Wörterbuch zu wechseln (z. B. eine andere Sprache)?

War es hilfreich?

Lösung

Der folgende Befehl schlägt eine Liste installierter Wörterbücher vor, die verwendet werden sollen:

M-x ispell-change-dictionary

Normalerweise, M-x isp-c-d erweitert auch auf das obige.

Andere Tipps

In der Datei ispell.el können Sie einige Optionen für die angeben ispell Befehle. Dies geschieht, indem ein Abschnitt zum Ende Ihrer Datei wie folgt hinzugefügt wird:

;; Local Variables:
;; ispell-check-comments: exclusive
;; ispell-local-dictionary: "american"
;; End:

Beachten Sie, dass das Doppel -Semikolon den Beginn der Kommentare im aktuellen Modus markiert. Es sollte wahrscheinlich geändert werden, um die Art und Weise widerzuspiegeln, wie Ihre Datei (Programmiersprache) Kommentare einführt, wie wie // für Java.

Am Ende einer Latex -Datei können Sie verwenden:

%%% Local Variables:
%%% ispell-local-dictionary: "british"
%%% End:

Dadurch wird das Wörterbuch so eingestellt, dass diese Datei nur für diese Datei verwendet werden soll.

Verwenden M-x ispell-change-dictionary und schlagen TAB Um zu sehen, welches Wörterbuch für Sie verfügbar ist.

Schreiben Sie dann die Einstellung des Standardwörterbuchs in Ihr .emacs, und fügen Sie einen Haken hinzu, um Isspell automatisch für Ihren spezifischen Modus zu starten (falls Sie möchten).

Starten Sie beispielsweise Isspell in Auctisx automatisch mit britischem Englisch (standardmäßig ist Englisch Dictionary American English)

(add-hook 'LaTeX-mode-hook 'flyspell-mode) ;start flyspell-mode
(setq ispell-dictionary "british")    ;set the default dictionary
(add-hook 'LaTeX-mode-hook 'ispell)   ;start ispell

Wenn Sie die Sprache pro Direktorium ändern möchten, können Sie diese zu a hinzufügen .dir-locals.el Datei:

(ispell-local-dictionary . "american")

Wenn Sie nein haben .dir-locals.el Die Datei wird bereits so aussehen:

((nil .
   ((ispell-local-dictionary . "american")))
)

Siehe das EMACS Wiki -Seite zu Verzeichnisvariablen für mehr Informationen.

Zur Bequemlichkeit (F7) habe ich meinen .Emacs Folgendes hinzugefügt:

(global-set-key [f7] 'spell-checker)

(require 'ispell)
(require 'flyspell)

(defun spell-checker ()
  "spell checker (on/off) with selectable dictionary"
  (interactive)
  (if flyspell-mode
      (flyspell-mode-off)
    (progn
      (flyspell-mode)
      (ispell-change-dictionary
       (completing-read
        "Use new dictionary (RET for *default*): "
        (and (fboundp 'ispell-valid-dictionary-list)
         (mapcar 'list (ispell-valid-dictionary-list)))
        nil t))
      )))

Übrigens: Vergessen Sie nicht, die benötigten Wörterbücher zu installieren. ZB über Debian/Ubuntu für das deutsche und englische Wörterbuch:

sudo apt install aspell-de aspell-en
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top