org-mode goto last cap?


10

org-mode goto dernier titre dans l'arborescence actuelle.

Dites qu'il s'agit de mon fichier org, le tube indique le curseur:

* Top|
** Apple
** Banana
** Cherry
* Middle
** Ape
** Bear
** Cat

Je voudrais exécuter une commande et avoir mon curseur ici:

* Top|
** Apple
** Banana
** Cherry|
* Middle
** Ape
** Bear
** Cat

2
Dernière rubrique du fichier ou arborescence actuelle?
Zavior

@Zavior Bonne question. J'ai clarifié la question d'origine.
Alex Baranosky

Réponses:


9

Il y a en fait une org-end-of-subtreefonction, mais ce n'est pas interactif. Vous pouvez simplement définir votre propre commande:

(defun goto-last-heading ()
  (interactive)
  (org-end-of-subtree))

5

Voici une commande, basée sur la réponse de @ itsjeyd, qui est robuste au cas de bord répertorié dans le commentaire de cette réponse (c'est-à-dire lorsque vous êtes sur le dernier en-tête / sous-arbre):

(defun org-end-of-subtree ()
  (interactive)
  (let ((org-special-ctrl-a/e t))
    (if (condition-case nil
            (outline-forward-same-level 1)
          (error t))
        (progn
          (goto-char (point-max))
          (outline-back-to-heading))
      (outline-previous-visible-heading 1))
    (org-end-of-line 1)))

4

Je ne pense pas qu'il existe une commande intégrée pour cela, mais vous pouvez facilement en définir une vous-même:

(defun org-goto-last-heading-in-tree ()
  (interactive)
  (org-forward-heading-same-level 1)     ; 1. Move to next tree
  (outline-previous-visible-heading 1)   ; 2. Move to last heading in previous tree
  (let ((org-special-ctrl-a/e t))        ; 3. Ignore tags when
    (org-end-of-line)))                  ;    moving to the end of the line

Et liez-le à une séquence de touches de votre choix via:

(define-key org-mode-map (kbd "C-c g") 'org-goto-last-heading)

c'est bien, merci pour le partage, mais peut-être que je dois être plus clair dans ma question. Ce que je veux vraiment, c'est aller au bout de l'arbre actuel ...
Alex Baranosky

@AlexBaranosky Oui, ce n'était pas clair d'après la façon dont vous avez formulé la question à l'origine. Donnez-moi une seconde pour ajuster le code ...
itsjeyd

@AlexBaranosky OK, ça devrait le faire. Merci d'avoir clarifié vos besoins!
itsjeyd

Je suggère de ne pas utiliser de C-c lreliure. C'est la liaison suggérée pour le mode org org-store-linkcar elle est très étroitement liée à org-insert-link( C-c C-l).
Kaushal Modi

@kaushalmodi Oui, merci. J'ai ajusté ma réponse.
itsjeyd
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.