I'm trying to create a custom agenda command that starts in follow-mode and follows indirectly. Starting with follow mode works fine, but org-agenda-follow-indirect is nil in the resulting org agenda buffer.
Minimal Working Example:
- save the following org txt as a local file
- evaluate the src block
- Expected results:
: Current buffer: *Org Agenda*
: org-agenda-follow-indirect: t
- Actual results:
: Current buffer: *Org Agenda*
: org-agenda-follow-indirect: nil
The results can be confirmed interactively in the resulting agenda buffer as well. Follow mode is on, but headlines are not being followed indirectly. Setting org-agenda-follow-indirect to t outside of the org-agenda-custom-commands settings form works as expected.
-----------------------------------------------------------------------
:PROPERTIES:
#+TITLE: org-agenda-follow-indirect bug
#+STARTUP: showeverything
:END:
* Set up Org agenda custom command
#+begin_src emacs-lisp :var current-file=(list (buffer-file-name))
;;reset global default value just in case
(setq org-agenda-follow-indirect nil)
;;set up org agenda custom command
(setq org-agenda-files current-file
org-agenda-custom-commands
'(("i" "indirect-follow-test" todo ""
((org-agenda-follow-indirect t)
(org-agenda-start-with-follow-mode t)))))
;;Test values
(org-agenda nil "i")
(set-buffer org-agenda-this-buffer-name)
(message "Current buffer: %s\norg-agenda-follow-indirect: %s" (current-buffer) org-agenda-follow-indirect)
#+end_src
#+RESULTS:
: Current buffer: *Org Agenda*
: org-agenda-follow-indirect: nil
* TODO TESTS one
** TODO Test heading two
*** TODO Test heading three
------------------------------------------------------------------------
Emacs : GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
of 2019-01-14
Package: Org mode version 9.2 (9.2-elpaplus @ /home/n/.emacs.d/elpa/org-plus-contrib-20181230/)
current state:
==============
(setq
org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer)
org-after-todo-state-change-hook '(org-clock-out-if-current)
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
org-refile-targets '((org-agenda-files :maxlevel . 20) (my/org-files-list :maxlevel . 20))
org-enforce-todo-dependencies t
org-src-tab-acts-natively t
org-agenda-files '("~/Documents/todo")
org-modules '(org-habit)
org-mode-hook '(org-bullets-mode auto-fill-mode writegood-mode org-indent-mode
flyspell-mode
(closure (t) nil (add-hook 'after-save-hook 'my/org-agenda-redo-all nil t))
#[0 "\300\301\302\303\304$\207"
[add-hook change-major-mode-hook org-show-all append local] 5]
#[0 "\300\301\302\303\304$\207"
[add-hook change-major-mode-hook org-babel-show-result-all append local]
5]
org-babel-result-hide-spec org-babel-hide-all-hashes
org-journal-update-auto-mode-alist org-eldoc-load)
org-outline-path-complete-in-steps nil
org-archive-hook '(org-attach-archive-delete-maybe)
org-confirm-elisp-link-function 'yes-or-no-p
org-journal-mode-hook '((lambda nil (auto-fill-mode t) (flyspell-mode t))
(lambda nil
(add-hook org-journal-encrypt-on 'org-journal-encryption-hook nil
t)
)
)
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-metaup-hook '(org-babel-load-in-session-maybe)
org-log-reschedule t
org-agenda-text-search-extra-files '(agenda-archives)
org-babel-pre-tangle-hook '(save-buffer)
org-file-apps '((auto-mode . emacs) ("\\.mm\\'" . default)
("\\.mp \\'" . "/usr/bin/mpv %s")
("\\.x?html?\\'" . "/usr/bin/firefox %s") ("\\.pdf\\'" . default))
org-tab-first-hook '(org-babel-hide-result-toggle-maybe org-babel-header-arg-expand)
org-babel-load-languages '((js . t) (shell . t) (python . t) (org . t))
org-log-done 'time
org-hide-emphasis-markers t
org-ellipsis "↴"
org-habit-following-days 1
org-agenda-span 'day
org-src-lang-modes '(("arduino" . arduino) ("redis" . redis) ("php" . php) ("C" . c)
("C++" . c++) ("asymptote" . asy) ("bash" . sh) ("beamer" . latex)
("calc" . fundamental) ("cpp" . c++) ("ditaa" . artist)
("dot" . fundamental) ("elisp" . emacs-lisp) ("ocaml" . tuareg)
("screen" . shell-script) ("shell" . sh) ("sqlite" . sql))
org-src-preserve-indentation t
org-habit-today-glyph 128197
org-fontify-done-headline t
org-habit-show-habits-only-for-today nil
org-occur-hook '(org-first-headline-recenter)
org-structure-template-alist '(("se" . "src emacs-lisp") ("a" . "export ascii")
("c" . "center") ("C" . "comment") ("e" . "example")
("E" . "export") ("h" . "export html")
("l" . "export latex") ("q" . "quote") ("s" . "src")
("v" . "verse"))
org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-show-empty-lines
org-optimize-window-after-visibility-change)
org-todo-keywords '((sequence "TODO(t)" "STARTED(s!)" "NEXT(n!)" "BLOCKED(b@/!)" "|"
"DONE(d)")
(sequence "IDEA(i)" "|" "CANCELED(c@/!)" "DELEGATED(D@/!)"))
org-speed-command-hook '(org-speed-command-activate org-babel-speed-command-activate)
org-babel-tangle-lang-exts '(("python" . "py") ("emacs-lisp" . "el") ("elisp" . "el"))
org-return-follows-link t
org-refile-allow-creating-parent-nodes 'confirm
org-refile-use-outline-path 'file
org-confirm-shell-link-function 'yes-or-no-p
org-link-parameters '(("id" :follow org-id-open) ("file+sys") ("file+emacs")
("doi" :follow org--open-doi-link)
("elisp" :follow org--open-elisp-link)
("file" :complete org-file-complete-link)
("ftp" :follow (lambda (path) (browse-url (concat "ftp:" path))))
("help" :follow org--open-help-link)
("http" :follow (lambda (path) (browse-url (concat "http:" path))))
("https" :follow (lambda (path) (browse-url (concat "https:" path))))
("mailto" :follow
(lambda (path) (browse-url (concat "mailto:" path))))
("news" :follow (lambda (path) (browse-url (concat "news:" path))))
("shell" :follow org--open-shell-link))
org-habit-completed-glyph 10003
org-todo-keyword-faces '(("CANCELED" :foreground "IndianRed1" :weight bold)
("TODO" :foreground "#ffddaa" :weight bold :background "#202020"
:box (:line-width 3 :width -2 :style released-button))
)
org-habit-preceding-days 29
org-src-window-setup 'current-window
org-confirm-babel-evaluate nil
)