mirror of
https://git.savannah.gnu.org/git/emacs/org-mode.git
synced 2024-11-22 07:09:47 +00:00
contrib/org-toc.el: add forward and back commands
These commands navigate among siblings in the outline, and are bound to the ‘f’ and ‘b’ keys. Move the function for toggling toc-follow to ‘F’.
This commit is contained in:
parent
41882a99d3
commit
c30ba6f156
@ -110,7 +110,7 @@ echo-area. The COLUMNS property is always exluded."
|
||||
(setq major-mode 'org-toc-mode))
|
||||
|
||||
;; toggle modes
|
||||
(define-key org-toc-mode-map "f" 'org-toc-follow-mode)
|
||||
(define-key org-toc-mode-map "F" 'org-toc-follow-mode)
|
||||
(define-key org-toc-mode-map "S" 'org-toc-show-subtree-mode)
|
||||
(define-key org-toc-mode-map "s" 'org-toc-store-config)
|
||||
(define-key org-toc-mode-map "g" 'org-toc-restore-config)
|
||||
@ -120,8 +120,10 @@ echo-area. The COLUMNS property is always exluded."
|
||||
;; navigation keys
|
||||
(define-key org-toc-mode-map "p" 'org-toc-previous)
|
||||
(define-key org-toc-mode-map "n" 'org-toc-next)
|
||||
(define-key org-toc-mode-map [(left)] 'org-toc-previous)
|
||||
(define-key org-toc-mode-map [(right)] 'org-toc-next)
|
||||
(define-key org-toc-mode-map "f" 'org-toc-forward)
|
||||
(define-key org-toc-mode-map "b" 'org-toc-back)
|
||||
(define-key org-toc-mode-map [(left)] 'org-toc-back)
|
||||
(define-key org-toc-mode-map [(right)] 'org-toc-forward)
|
||||
(define-key org-toc-mode-map [(up)] 'org-toc-previous)
|
||||
(define-key org-toc-mode-map [(down)] 'org-toc-next)
|
||||
(define-key org-toc-mode-map "1" (lambda() (interactive) (org-toc-show 1 (point))))
|
||||
@ -332,6 +334,24 @@ If DELETE is non-nil, delete other windows when in the Org buffer."
|
||||
(if org-toc-info-mode (org-toc-info))
|
||||
(if org-toc-follow-mode (org-toc-goto)))
|
||||
|
||||
(defun org-toc-forward ()
|
||||
"Go to the next headline at the same level in the TOC."
|
||||
(interactive)
|
||||
(condition-case nil
|
||||
(outline-forward-same-level 1)
|
||||
(error (message "No next headline at this level.")))
|
||||
(if org-toc-info-mode (org-toc-info))
|
||||
(if org-toc-follow-mode (org-toc-goto)))
|
||||
|
||||
(defun org-toc-back ()
|
||||
"Go to the previous headline at the same level in the TOC."
|
||||
(interactive)
|
||||
(condition-case nil
|
||||
(outline-backward-same-level 1)
|
||||
(error (message "No previous headline at this level.")))
|
||||
(if org-toc-info-mode (org-toc-info))
|
||||
(if org-toc-follow-mode (org-toc-goto)))
|
||||
|
||||
(defun org-toc-quit ()
|
||||
"Quit the current Org TOC buffer."
|
||||
(interactive)
|
||||
@ -462,12 +482,13 @@ status."
|
||||
(let ((st-start 0)
|
||||
(help-message
|
||||
"\[space\] show heading \[1-4\] hide headlines below this level
|
||||
\[TAB\] jump to heading \[f\] toggle follow mode (currently %s)
|
||||
\[TAB\] jump to heading \[F\] toggle follow mode (currently %s)
|
||||
\[return\] jump and delete others windows \[i\] toggle info mode (currently %s)
|
||||
\[S-TAB\] cycle subtree (in Org) \[S\] toggle show subtree mode (currently %s)
|
||||
\[C-S-TAB\] global cycle (in Org) \[r\] toggle recenter mode (currently %s)
|
||||
\[:\] cycle subtree (in TOC) \[c\] toggle column view (currently %s)
|
||||
\[n/p\] next/previous heading \[s\] save TOC configuration
|
||||
\[f/b\] next/previous heading of same level
|
||||
\[q\] quit the TOC \[g\] restore last TOC configuration"))
|
||||
(while (string-match "\\[[^]]+\\]" help-message st-start)
|
||||
(add-text-properties (match-beginning 0)
|
||||
|
Loading…
Reference in New Issue
Block a user