Comme beaucoup d'entre nous, j'utilise le mode org pour deux choses différentes:
- En tant que gestionnaire de liste TODO
- Sous forme de texte
J'aimerais que mes lignes vides fonctionnent différemment en fonction du contexte.
- Liste TODO: pas de lignes vides
- contour du texte: insérer automatiquement 1 ligne vierge lorsque le texte sans en-tête précède un en-tête
En d'autres termes, lorsque je fais une liste TODO lorsque j'ai plusieurs en-têtes de suite, je ne veux pas de sauts de ligne parasites entre eux.
Mode liste TODO, pas de sauts de ligne:
* Organize Party [33%]
** TODO Call people [1/2]
*** TODO Peter
*** DONE Sarah
** TODO Buy food
** DONE Talk to neighbor
Cependant, lorsque j'écris du texte, je veux des sauts de ligne pour des espaces visuels / facilité de lecture.
mode contour, ligne vierge avant l'en-tête:
* Heading
This is a document that has a heading, and a body. The body will consist of two paragraphs with sub-headings.
* Body
This is an introduction to the body. The body has two sub-headings, each of which have their own paragraph.
** The First Paragraph
This is the first of two paragraphs.
** The Second Paragraph
This is the second of two paragraphs.
J'ai déjà défini org-blank-before-new-entry sur auto:
((heading . auto)
(plain-list-item . auto))
Mais je pense que org-blank-before-new-entry fonctionne en détectant d'autres lignes vides dans la zone. Je veux qu'il détecte si la ligne de texte précédente est un titre ou un non-titre.
Comment puis-je modifier org-blank-before-new-entry afin que lorsque je suis dans une liste TODO composée uniquement de titres, org-meta-return
n'ajoute pas de saut de ligne? mais après un bloc de texte, c'est le cas?
la source
Réponses:
Cela peut être fait en créant une fonction personnalisée qui vérifie si elle se trouve sur un en-tête d'organisation.
la source
C-ret
(org-insert-header-respect-content),M-S-return
(org-insert-todo-head) etC-S-return
(org-insert-todo-header-respect -contenu)?org-insert-todo-heading
ne fonctionne pas même si je le lie à une clé comme celle-ci: (define-key org-mode-map (kbd "MS- <return>") 'smart-org-insert-todo-header-dwim)