我经常使用组织模式的捕获-重新文件-归档结构,但我对重新归档的工作方式有疑问。我使用 IDO 补全,这样当我重新归档树时
C-c C-w
我就可以在迷你缓冲区中获得所有可能的树来重新归档。
然而,这会导致大量可能的补全,而这些补全确实不太可读。如果您可以选择重新归档文件位置,然后使用
org-goto-interface
临时缓冲区来选择特定的子树,那就更好了。
有人知道如何做到这一点吗?
也许您正在寻找的设置是
(setq org-refile-use-outline-path 'file)
(setq org-outline-path-complete-in-steps t)
org-refile-use-outline-path
允许您将重新归档目标指定为路径 (file.org/heading/subheading
),并且 org-outline-path-complete-in-steps
将在竞争路径的每个阶段后暂停。开始重新归档,输入路径并按 [tab]
即可获取所有顶级标题的列表。继续前往您想要的位置。
您可以通过在运行前设置
org-refile-targets
来完成此操作
org-refile
。例如,我有
描述做
用于选择并重新归档到不在全局中的 Org 文件
org-refile-targets
。其重点是具有除
org-refile
处理特殊情况,但如果您想要 org-refile
总是要求缓冲区或文件重新归档,你可以建议
org-refile
覆盖 org-refile-targets
或者您可以设置
org-refile-targets
到返回选定缓冲区的函数。
(defun km/get-open-org-file ()
(buffer-file-name
(get-buffer
(org-icompleting-read "Buffer: "
(mapcar 'buffer-name
(org-buffer-list 'files))))))
(setq org-refile-targets '((km/get-open-org-file . (:maxlevel . 2))))
具体如何设置
org-refile-targets
很大程度上取决于您的工作
笔记的流程和结构,但这些例子希望能给你一个
了解如何让事情按照您想要的方式运行。