2010-08-12 11 views
5

Ich benutze Emacs in Verbindung mit AucTeX (Ubuntu 10.04, wenn das wichtig ist).Emacs/Auctex: Automatisches Aktivieren/Deaktivieren des LaTeX-Math-Modus

Weiß jemand, ob es einen Weg gibt automatisch LaTeX-Mathe-Modus (a-Moll-Modus von AucTeX), wenn der Punkt ist, in jedem Mathe-Umgebung (dh in einem $...$, ein $$...$$, begin{equation}...\end{equation}, und so weiter) zu ermöglichen, ?

Ich nehme an, dass es eine relativ einfache Antwort gibt, da die Syntaxhervorhebung das gleiche Kriterium zum Einfärben von Mathezeug verwendet, aber ich konnte nichts finden.

Antwort

4

Wenn die Antwort andre-r Sie nicht zufriedenstellt, gibt es hier einen Code, der ` einrichtet, um im Textmodus selbst einzufügen und als mathematisches Moduspräfix im mathematischen Modus zu fungieren. LaTeX-math-mode muss aus sein.

(defun LaTeX-maybe-math() 
    "If in math mode, act as a prefix key for `LaTeX-math-keymap'. 
Otherwise act as `self-insert-command'." 
    (interactive) 
    (if (texmathp) 
     (let* ((events (let ((overriding-local-map LaTeX-math-keymap)) 
         (read-key-sequence "math: "))) 
      (binding (lookup-key LaTeX-math-keymap events))) 
     (call-interactively binding)) 
    (call-interactively 'self-insert-command))) 
(define-key LaTeX-mode-map "`" 'LaTeX-maybe-math) 

Folgende Verbesserungen sind als Übungen links:

  • es eine kleine Modus machen.

  • Machen Sie es robuster in Richtung unerwartete Eingabe (ich habe nur Grundbetrieb getestet).

  • Eine bessere Fehlermeldung anzeigen, wenn der Benutzer eine ungebundene Tastenfolge drückt.

  • Hilfe anzeigen, wenn der Benutzer C-h oder f1 drückt.

2

LaTeX-math-mode ist "ein spezieller untergeordneter Modus zur Eingabe von Text mit vielen mathematischen Symbolen." (Für diejenigen, die nicht wissen, wie, drücken Sie zum Beispiel `A und holen \ Forall.) Also ich denke, es tut nicht weh, es zu verlassen, auch wenn Sie nicht in Mathematik eingeben.

Die Info-Seite schlägt daher vor:

(add-hook 'LaTeX-mode-hook 'LaTeX-math-mode) 

IMHO ist der einzige Nachteil wäre, dass Sie das Präfix zweimal drücken müssen: `` zu erhalten `, zumindest die in LaTeX-math-abbrev-prefix mit dem Standard-Präfix` angepasst arbeiten .

Verwandte Themen