刷新缩小的组织模式缓冲区的内容

时间:2014-12-01 03:13:57

标签: emacs elisp org-mode

我广泛使用emacs org-mode。您可以在https://github.com/ehuang3/dotfiles找到我的完整设置。

问题是这样的:

当我执行org-capture-refile并返回org-agenda-view时,除了我还运行bh/narrow-to-project(定义为{{3} )。

(defun bh/narrow-to-project ()
  (interactive)
  (if (equal major-mode 'org-agenda-mode)
      (progn
        (org-with-point-at (bh/get-pom-from-agenda-restriction-or-point)
          (bh/narrow-to-org-project)
          (save-excursion
            (bh/find-project-task)
            (org-agenda-set-restriction-lock)))
        (org-agenda-redo)
        (beginning-of-buffer))
    (bh/narrow-to-org-project)
    (save-restriction
      (org-agenda-set-restriction-lock))))

我目前的解决方案是定义以下钩子

(add-hook 'org-capture-after-finalize-hook 'bh/narrow-to-project)

然而,由于正在运行org-capture也将缩小到项目范围,因此需要注意这一点。如果可能,我希望在我wide时留在wide视图中,并在我被限制为项目时刷新narrow视图。

我的lisp不足以梳理并重现bh/narrow-to-project如何设法正确刷新受限agenda-view。我知道bh/narrow-to-org-project打电话给widen我认为org-agenda-redo可以使用新任务正确刷新。{/ p>

有什么想法吗?

0 个答案:

没有答案