15.2. Emacs

Installieren Sie entweder das Paket editors/emacs oder editors/emacs-devel.

15.2.1. Validierung

Der xnml-Modus von Emacs verwendet ein kompaktes RELAX-NG (Regular Language Description for XML New Generation)-Schema, um XML zu validieren. Ein solches, an DocBook 5.0 von FreeBSD angepasstes Schema ist im Dokumentationsrepository bereits vorhanden. Damit der nxml-Modus dieses Schema verwendet, müssen Sie die Datei ~/.emacs.d/schema/schemas.xml anlegen und folgende Zeilen in die Datei einfügen:

<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0">
  <documentElement localName="section" typeId="DocBook">
  <documentElement localName="chapter" typeId="DocBook">
  <documentElement localName="article" typeId="DocBook">
  <documentElement localName="book" typeId="DocBook">
  <typeId id="DocBook" uri="/usr/local/share/xml/docbook/5.0/rng/docbook.rnc">
</locatingRules>

15.2.2. Automatisches Gegenlesen mit Flycheck und Igor

Das Flycheck-Paket ist über Milkypostman's Emacs Lisp Package Archive (MELPA) erhältlich. Ist MELPA noch nicht in packages-archives von Emacs eingetragen, muss dies manuell durch das Ausführen der folgenden Emacs-Anweisung erfolgen:

(add-to-list 'package-archives '("melpa" . "http://stable.melpa.org/packages/") t)

Um die Änderung permanent zu machen, müssen Sie diese Zeile in die Initialisierungsdatei von Emacs aufnehmen, konkret in eine der folgenden Dateien: ~/.emacs, ~/.emacs.el oder ~.emacs.d/init.el.

Um Flycheck zu installieren, führen Sie folgende Anweisung aus:

(package-install 'flycheck)

Legen Sie einen Flycheck-Prüfer für textproc/igor an, indem Sie die folgende Anweisung ausführen:

(flycheck-define-checker igor
  "FreeBSD Documentation Project sanity checker.

See URLs http://www.freebsd.org/docproj/ and
http://www.freshports.org/textproc/igor/."
  :command ("igor" "-X" source-inplace)
  :error-parser flycheck-parse-checkstyle
  :modes (nxml-mode)
  :standard-input t)

  (add-to-list 'flycheck-checkers 'igor 'append)

Wie bei MELPA müssen Sie auch diese Anweisung in die Initialisierungsdatei von Emacs aufnehmen, um sie permanent zu aktivieren.

15.2.3. FreeBSD-Dokumentationsspezische Einstellungen

Um FreeBSD-spezifische Einstellungen zu aktivieren, legen Sie die Datei .dir-locals.el im Wurzelverzeichnis des Dokumentationsrepositories an und fügen die folgenden Zeilen in diese Datei ein:

;;; Directory Local Variables
;;; For more information see (info "(emacs) Directory Variables")

((nxml-mode
  (eval . (turn-on-auto-fill))
  (fill-column . 70)
  (eval . (require 'flycheck))
  (eval . (flycheck-mode 1))
  (flycheck-checker . igor)
  (eval . (add-to-list 'rng-schema-locating-files "~/.emacs.d/schema/schemas.xml"))))

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.

Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.