gpt4 book ai didi

emacs - 在 Emacs Org 模式下执行标签搜索时消除不匹配的顶级树

转载 作者:行者123 更新时间:2023-12-01 06:44:07 31 4
gpt4 key购买 nike

在过去的一年半里,我在 Org 模式下为我与当前雇主的工程笔记维护了一个整体缓冲区。尽管主要包含指向其他文档的指针,但按照人类标准(48,290 行文本),这个文件已经变得相当大,同时通过编程方式(阅读:grep 和 Org 模式标签搜索)仍然可以轻松搜索和编辑。

不过,有一件事困扰着我。当我执行 tag search using Org Mode 6.33x , Org 的稀疏 TreeView 保留了缓冲区内不匹配树的折叠表示(即,内容前面有一个星号,*)。这对于较小的缓冲区或更好地组织成具有多个分支的单个树的缓冲区通常很有用。但是,这对于按时间顺序生成每棵新树的文档来说并不是特别有效,就像我一直在做的那样,每天生成一棵树。

.

在我继续之前,我会注意到我的解决方法是我刚才询问的内容所固有的,我的文档习惯使用此缓冲区的明显改变也是如此。但是,仍然存在以下问题:

1)为什么Org Mode在进行稀疏标签搜索时会以这种方式组织树?技术细节是不言而喻的,而用户体验决策则不那么重要。

2) 如果我想用 Emacs Lisp 编写的脚本来纠正这个问题,我应该更详细地探索哪些钩子(Hook)和命令来重构文档 View ?为标准命令(例如 org-match-sparse-tree )编写覆盖已经是不言而喻的。

.

先感谢您。

最佳答案

正如您已经注意到的那样,该问题仅影响顶级标题。好消息是,在 org-mode 中,您可以通过简单的按键轻松降级所有标题。这样你就可以避免这个问题。事后清理也只是一些简单的击键。

分步说明:

  • 标记整个缓冲区
  • 调用 M-right (for outline-demote )
  • 输入 * root\n在文件的开头
  • 现在,建立你的子树并用它做你想做的事。
  • 完成后,您可以删除 * root\n在文件的开头并再次使用 M-left
  • 提升标题

    我的印象是,您甚至可以将总体标题留给您的应用程序。

    关于emacs - 在 Emacs Org 模式下执行标签搜索时消除不匹配的顶级树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7602787/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com