Skip to content

Instantly share code, notes, and snippets.

@AlexanderWingard
Last active December 18, 2015 16:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AlexanderWingard/5814843 to your computer and use it in GitHub Desktop.
Save AlexanderWingard/5814843 to your computer and use it in GitHub Desktop.
org-goto-subtree
(require 'org-element)
(defun goto-notes ()
(interactive)
(find-file "/home/lex/org/test.org")
(org-goto-subtree '("a" "b" "q" "h"))
(org-show-context)
(org-show-entry)
(show-children))
(defun org-goto-subtree (path)
(let ((level 1))
(org-element-map
(org-element-parse-buffer 'headline)
'headline
(lambda (x)
(if (< (org-element-property :level x) level)
(setq level (org-element-property :level x)))
(if (and (= level (org-element-property :level x))
(string= (nth (- level 1) path) (org-element-property :raw-value x)))
(progn (setq level (+ level 1))
(if (> level (list-length path))
(goto-char (org-element-property :begin x))))))
nil t)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment