¿Cómo llenar (ajustar) un encabezado de modo org?

9

Me gustaría llenar (ajustar) un encabezado largo en modo org. No veo mención de cómo hacerlo en el manual de la organización .

Si envuelvo manualmente la línea insertando una nueva línea, el modo org no reconoce el texto envuelto como un encabezado.

es posible?

Nota: org-fill-paragraphno hace esto:

(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.
fuente

Respuestas:

11

El póster original está usando las palabras fille wrapindistintamente, no son lo mismo.

Ver la 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.

El valor por defecto es t. Para cambiar esto, el usuario puede poner el siguiente código en el .emacsarchivo:

(setq org-startup-truncated nil)

org-modenecesita un final de línea para identificar correctamente un encabezado. Para ver un ejemplo de la expresión regular que org-modeutiliza para encabezados, el usuario puede escribir (después de org-modeque se haya cargado un búfer):

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

Como se puede ver, el final es $, es decir, hasta el final de la línea.

^\\(\\*+\\)\\(?: +\\(TODO\\|DONE\\)\\)?\\(?: +\\(\\[#.\\]\\)\\)?\\(?: +\\(.*?\\)\\)??\\(?:[     ]+\\(:[[:alnum:]_@#%:]+:\\)\\)?[    ]*$
lista de leyes
fuente
Gracias por aclarar el relleno frente al envoltorio. Esa distinción no está clara al leer www.emacswiki.org/emacs/FillParagraph. Gracias por mostrar la expresión regular subyacente. En cuanto a las conclusiones, ¿es esto exacto? A menos que uno modifique esa expresión regular, llenar (insertar nuevas líneas) no es una opción. El truncamiento funcionará, ya sea utilizando la forma en que se muestra o con M-x toggle-truncate-lines(se muestra en mi respuesta).
David J.
1
Para deshabilitar el truncamiento automáticamente, la variable org-startup-truncatedes más apropiada porque la inicialización de org-modecomprueba el valor de esa variable y, a menos que lo sea nil, el proceso de inicialización se establece específicamente (setq truncate-lines t). Para mantener el comportamiento predeterminado y solo alternarlo manualmente, entonces toggle-truncate-lineses ciertamente apropiado. La expresión regular subyacente para los títulos no se puede cambiar fácilmente (en mi opinión) porque hay un millón y una funciones que dependen de ella, por ejemplo org-agenda-list,; org-search-view; org-tags-view, para nombrar unos pocos.
ley
1
También puede interesarle visual-line-modequé esfuerzos mantener juntas las palabras completas al finalizar. Para mi propia configuración, he modificado la edición de las entradas de tareas de la siguiente manera: la edición reduce automáticamente el búfer a la tarea que estoy editando; visual-line-modeestá activado y hago mi edición; al salir del búfer estrecho, visual-line-modese apaga; el truncamiento sigue siendo el valor predeterminado cuando el búfer no se reduce. Tengo una configuración personalizada que mantiene el búfer no restringido en un estado de solo lectura, que se hace legible cuando se edita, y luego se establece en solo lectura cuando se hace.
ley
4

No veo cómo hacer que el relleno funcione. Entonces, una solución alternativa es usar M-x toggle-truncate-lines. Esto solo afecta la presentación del encabezado. No inserta nuevas líneas.

David J.
fuente