16

如果源是:如何将 org 文件复制到其他缓冲区:

** TODO task #1
   - some text for task #1
** TODO task #2 
   - some text for task #2

但是当你折叠所有任务时,它看起来像

** TODO task #1 ...
** TODO task #2 ...

我想标记所有任务并复制到另一个缓冲区,它必须看起来像第二个变体。不要包含存储在每个任务中的任务文本。我该怎么做?

4

3 回答 3

23

根据 Hendy 的评论,在当前版本的 org-mode 中,您使用org-copy-visible( C-c C-x v) 将当前区域的可见内容复制到 kill ring。(C-x h可以像往常一样首先用来标记整个缓冲区。)

此外,请注意导出调度菜单 ( C-x C-e) 提供了“仅可见”开关,如果您想将该内容导出为不同的格式。

对于旧版本的 org-mode,以下原始答案仍应适用:


M-x org-export-visible RET SPC只会将组织模式缓冲区的当前可见文本复制到新缓冲区中。

org-export-visible 是 org-exp.el 中的一个交互式编译 Lisp 函数。

(org-export-visible TYPE ARG)

创建当前缓冲区可见部分的副本,并将其导出。副本在临时缓冲区中创建并在使用后删除。TYPE 是最后一个键(作为一个字符串),它也在“Cc Ce”导出调度程序中选择导出命令。作为一种特殊情况,如果您在提示符下键入 SPC,临时 org-mode 文件将不会被删除,而是呈现给您,以便您可以继续使用它。前缀 arg ARG 被传递给导出命令。

如果你想绑定它(C-c o在这个例子中),你可以使用以下内容:

(add-hook 'org-mode-hook 'my-org-mode-hook)
(defun my-org-mode-hook ()
  "Custom behaviours when entering org-mode."
  (local-set-key (kbd "C-c o") (function (lambda () (interactive)
                                           (org-export-visible ?\s nil)))))
于 2010-07-09T12:50:50.683 回答
10

org-copy-visible,那应该完全符合您的需要。

于 2014-03-26T14:21:05.363 回答
-1

尝试M-x org-todo-list(或C-c a t)。这会在 *Org Agenda* 缓冲区中显示TODO条目列表(在议程文件列表中列出的文件中)。

您可能需要将当前文件添加到议程文件列表中。从org-agenda文档:

如果当前缓冲区处于 Org 模式并正在访问文件,您也可以先按一次“<”以指示议程应暂时(直到下次使用 Cc a)限制在当前文件中。按“<”两次意味着限制到当前子树或区域(如果处于活动状态)。

于 2010-07-07T20:19:02.603 回答