I hope a kind soul can comment here. For years I have been trying to make it so that you can go to Org from Magit and have it reveal the way I want.
[All I want is what for me is a normal visibility state, which means a visibility state that can be recreated using only arrow keys and TAB.] Is org-reveal the wrong tool for this job? Is there another tool that works better for it? The apparent bugs are in the comments below. Thanks. Samuel P.S. I am also hoping for the same effect upon going from the Org agenda to the Org outline. === (defadvice magit-visit-item (after org-visibility activate compile) "Make going to Org from Magit reveal canonically." (when (eq major-mode 'org-mode) (alpha-org-reveal-canonically))) (defun alpha-org-reveal-canonically () "Reveal around point canonically. Canonical visibility means that the buffer is always in a visibility state that can be created solely by arrow keys + TAB. Thus, merely showing the next header without all of its siblings is not canonical. Also, showing children without showing the parent's entry text is not canonical." (interactive) ;; bug 1: when point is in entry text, the first child of that ;; entry shows, but its siblings (i.e. the other children) do ;; not show, even though i have org-show-siblings and ;; org-show-hierarchy-above both set to t. ;; ;; the entry text must show because point is in it. and ;; because it must show, so must all children. how do i get it ;; to do this? ;; ;; bug 2: when point is on the first child headline, its ;; siblings show, but the entry text of its parent does not ;; show. how do i get it to show the parent's entry text? ;; ;; bug 3: org-reveal takes several seconds to run. is there a ;; way to speed it up? (org-reveal t) ;; (if ...) ;; (show-entry) )