Wie fülle ich eine Überschrift im Organisationsmodus?

9

Ich möchte eine lange Überschrift im org-Modus füllen (umbrechen). Ich sehe im Organisationshandbuch keine Erwähnung, wie das geht .

Wenn ich die Zeile manuell einfüge, indem ich eine neue Zeile einfüge, erkennt der Organisationsmodus den umgebrochenen Text nicht als Überschrift.

Ist das möglich?

Hinweis: org-fill-paragraphtut dies nicht:

(defun org-fill-paragraph (&optional justify)
  "Fill element at point, when applicable.

This function only applies to comment blocks, comments, example
blocks and paragraphs.  Also, as a special case, re-align table
when point is at one.

If JUSTIFY is non-nil (interactively, with prefix argument),
justify as well.  If `sentence-end-double-space' is non-nil, then
period followed by one space does not end a sentence, so don't
break a line there.  The variable `fill-column' controls the
width for filling.

For convenience, when point is at a plain list, an item or
a footnote definition, try to fill the first paragraph within."
  (interactive)
  ; ...
David J.
quelle

Antworten:

11

Das Originalplakat verwendet die Wörter fillund ist wrapaustauschbar - sie sind nicht dasselbe.

Siehe die Variable org-startup-truncated:

Non-nil means entering Org-mode will set `truncate-lines'.
This is useful since some lines containing links can be very long and
uninteresting.  Also tables look terrible when wrapped.

Der Standardwert ist t. Um dies zu ändern, kann der Benutzer den folgenden Code in die .emacsDatei einfügen :

(setq org-startup-truncated nil)

org-modebenötigt ein Zeilenende, um eine Überschrift korrekt zu identifizieren. Um ein Beispiel für den regulären Ausdruck zu sehen, org-modeder für Überschriften verwendet wird, kann der Benutzer Folgendes eingeben (nachdem ein org-modePuffer geladen wurde):

M-x describe-variable RET org-complex-heading-regexp RET

Wie zu sehen ist, ist das Ende $- dh bis zum Ende der Zeile.

^\\(\\*+\\)\\(?: +\\(TODO\\|DONE\\)\\)?\\(?: +\\(\\[#.\\]\\)\\)?\\(?: +\\(.*?\\)\\)??\\(?:[     ]+\\(:[[:alnum:]_@#%:]+:\\)\\)?[    ]*$
Gesetzesliste
quelle
Vielen Dank für die Klärung von Füllung und Verpackung. Diese Unterscheidung ergibt sich nicht aus der Lektüre von www.emacswiki.org/emacs/FillParagraph. Vielen Dank, dass Sie den zugrunde liegenden regulären Ausdruck angezeigt haben. Ist dies zum Mitnehmen korrekt?: Wenn man diesen regulären Ausdruck nicht ändert, ist das Ausfüllen (Einfügen von Zeilenumbrüchen) keine Option. Das Abschneiden funktioniert entweder auf die von Ihnen M-x toggle-truncate-linesgezeigte Weise oder mit (in meiner Antwort gezeigt).
David J.
1
Um das Abschneiden automatisch zu deaktivieren, ist die Variable org-startup-truncatedam besten geeignet, da bei der Initialisierung von org-modeder Wert dieser Variablen überprüft wird nilund der Initialisierungsprozess speziell festgelegt wird , sofern dies nicht der Fall ist (setq truncate-lines t). Um das Standardverhalten beizubehalten und nur manuell umzuschalten, toggle-truncate-linesist dies sicherlich angemessen. Die zugrunde liegende Regex für Headlings kann (meiner Meinung nach) nicht einfach geändert werden, da es eine Million und eine Funktion gibt, die darauf beruhen - z org-agenda-list. org-search-view;; org-tags-view, um ein paar zu nennen.
Lawlist
1
Vielleicht interessiert Sie auch, visual-line-modewelche Bestrebungen es sind, beim Verpacken ganze Wörter zusammenzuhalten. Für mein eigenes Setup habe ich die Bearbeitung von Aufgabeneinträgen wie folgt geändert: Durch die Bearbeitung wird der Puffer automatisch auf die Aufgabe eingegrenzt, die ich bearbeite. visual-line-modeist aktiviert und ich bearbeite; wird beim Verlassen des verengten Puffers visual-line-modeausgeschaltet; Das Abschneiden bleibt die Standardeinstellung, wenn der Puffer nicht eingegrenzt wird. Ich habe ein benutzerdefiniertes Setup, das den nicht verengten Puffer in einem schreibgeschützten Zustand hält, der beim Bearbeiten lesbar gemacht und nach Abschluss auf schreibgeschützt gesetzt wird.
Lawlist
4

Ich sehe nicht, wie man das Füllen zum Laufen bringt. Ein Workaround ist also zu verwenden M-x toggle-truncate-lines. Dies betrifft nur die Darstellung der Überschrift. Es werden keine Zeilenumbrüche eingefügt.

David J.
quelle