Fix agenda follow mode to work with included diary

* lisp/org-agenda.el (org-agenda-goto): Fix function to work with
  non-Org buffers.  Otherwise `org-agenda-follow-mode' does not work
  correctly with included diary entries (e.g., it errors out while the
  cursor is still in the diary buffer).

Follow mode does not work with diary entries in the agenda.  It calls
`org-agenda-goto', which expects to be in an Org mode buffer but does not
test to make sure that it is in an Org buffer.  As a result, it errors
out midway through and leaves the cursor stranded in the diary buffer.
This commit is contained in:
Matt Lundin 2015-08-24 10:31:49 -05:00 committed by Nicolas Goaziou
parent 0b524dd82c
commit 06966b9403
1 changed files with 7 additions and 7 deletions

View File

@ -8391,13 +8391,13 @@ When called with a prefix argument, include all archive files as well."
(org-show-context 'agenda)
(save-excursion
(and (outline-next-heading)
(org-flag-heading nil)))) ; show the next heading
(when (outline-invisible-p)
(show-entry)) ; display invisible text
(recenter (/ (window-height) 2))
(org-back-to-heading t)
(if (re-search-forward org-complex-heading-regexp nil t)
(goto-char (match-beginning 4)))
(org-flag-heading nil))) ; show the next heading
(when (outline-invisible-p)
(show-entry)) ; display invisible text
(recenter (/ (window-height) 2))
(org-back-to-heading t)
(if (re-search-forward org-complex-heading-regexp nil t)
(goto-char (match-beginning 4))))
(run-hooks 'org-agenda-after-show-hook)
(and highlight (org-highlight (point-at-bol) (point-at-eol)))))