如何在org-mode议程树视图中显示条目的完整上下文

时间:2010-05-11 00:03:37

标签: emacs elisp org-mode

在org-mode的每日/每周议程视图中,有没有办法显示条目的完整上下文?

我对代码的阅读是它找到时间戳上方的第一个标题并显示它。但是,在我的情况下,该标题通常是3-4级深度,如果没有上面的子弹则没有意义。它似乎也没有很容易改变它的钩子。过滤是微不足道的,但不会改变基本的表示格式。

3 个答案:

答案 0 :(得分:8)

无法直接在议程视图中显示所有上下文,但您可以右键单击议程视图中的标题,它将在稀疏树上下文中显示主窗口中的标题。

您可能需要折叠主窗口中的所有内容,以便右键单击定位以显示稀疏树视图。

这看起来非常接近你正在寻找的东西。要检查,请执行以下操作:

  1. 创建所需的议程视图。
  2. 在主文档窗口中,将所有内容折叠为第一级标题。
  3. 在议程视图中右键单击所需的标题。它应该在主文档窗口中的稀疏树上下文中显示标题。

  4. 除了使用上述右键单击功能之外,您还可以通过以下几种方法获取有关议程视图中上下文的更多信息。

    首先,您可以自己排列标题,以便为您提供更多上下文信息。例如,有可能具有标记为“任务”的许多第四级标题,每个标题包括与每棵树中的标题相关的任务。但是,这不会在议程视图中提供良好的上下文信息,因为每行的标题文本将是相同的(即“任务”)并且在上下文中没有信息。一个简单的解决方案就是使标题更加具体,例如“Project xxxx Tasks”和“Project yyy Tasks”。

    在议程视图中获得更多上下文的另一种方法是使用“类别”。议程视图中的第一列是默认包含标题的文件名,但如果标题有一个类别,则会显示该类别。要为标题及其所有子树分配类别,您可以在主标题中添加类别属性,如下所示:

     :PROPERTIES:
      :CATEGORY:Project xxx Stuff
      :END:
    

    现在,议程视图将在第一列中显示从该标题子树中收集的每个议程行的“Project xxx Stuff”。

答案 1 :(得分:2)

也许议程并不是你真正需要的。我会用这个:

`M-x org-sparse-tree RET D'

然后选择日期范围并浏览结果。

HTH

答案 2 :(得分:1)

跟随模式(S-f)非常接近OP正在寻找的内容。在另一个答案的评论中归功于@armando.sano