Ich benutze Emacs in Kombination mit AUCTeX, um Manuskripte mit viel Inline-Mathematik mit $
zu bearbeiten. Beim automatischen Füllen (z. B. mit M-q) unterbricht Emacs häufig diese Inline-Mathematikumgebungen an Positionen, die die Leseflüssigkeit stören (z. B. in Indizes oder dergleichen).Verhindern, dass Emacs vom Zeilenumbruch in TeX inline Mathe
Gibt es eine Möglichkeit, Emacs mitzuteilen, dass er lieber die gesamte $…$
-Umgebung in eine neue Zeile einfügt, wenn dies das Brechen verhindern würde? Genauer gesagt, sollte es zu einem Bruch in der Mathematik kommen, sollte die gesamte Umgebung in eine neue Zeile verschoben werden, die nicht getrennt werden sollte.
Ein Beispiel: Wenn Sie
(add-hook 'LaTeX-mode-hook
(lambda()
(add-hook 'fill-nobreak-predicate 'my-latex-fill-nobreak)))
und dann definieren eine Funktion my-latex-fill-nobreak
, die einen Nicht-Null:
Lorem ipsum dolor sit amet, consectetur adipisici elit, sed $a^2 + b^2 = c^2$ eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam.
sollte so etwas wie führen in
Lorem ipsum dolor sit amet, consectetur adipisici elit, sed
$a^2 + b^2 = c^2$ eiusmod tempor incidunt ut labore et dolore magna
aliqua. Ut enim ad minim veniam.
Danke, das ist nah! Es ist schön, dass es kurze mathematische Umgebungen über mehrere Zeilen verteilt. Dies führt jedoch dazu, dass sehr lange Zeilen _explitely_ nicht gebrochen werden können (ich meine, dass die expliziten Breaks gelöscht werden, wenn man 'M-q' drückt). Weißt du, wie man das einbaut? (Es ist jedoch schwierig, ich kann es nicht präziser präzisieren.) – Xlea
Ich bin mir nicht sicher, ob ich verstehe, was Sie unter "explizite Unterbrechungen" verstehen. Wenn Sie nur Stellen des Textes meinen, an denen Sie "RET" gedrückt haben, dann gibt es keine Möglichkeit, diese von den automatischen Zeilenumbrüchen der Emacs-Füllfunktionen zu unterscheiden. Sie könnten jedoch das Kommentarzeichen '%' am Ende einer Zeile hinzufügen, um zu verhindern, dass der Zeilenumbruch durch 'M-q' geändert wird. – mk1
Was ich meine ist, dass, wenn lange Mathematik (länger als eine Zeile) bereits auf einer separaten Zeile und gebrochen ist (von wem auch immer), dann möchte ich nicht Emacs nachfolgende Zeilen nach oben ziehen (dh, _don't remove_ ein Zeilenumbruch, wenn das würde zu einer langen Linie führen). Ich benutze bereits '%', aber es ist nicht sehr praktisch. – Xlea