在议程视图中匹配属性

Tal*_*Kit 4 emacs org-mode

我想收集并创建一个包含标题的块,标题只在标题中有"ID"属性.

即要过滤的标题看起来像

* Headline 
   :PROPERTIES:
   :ID: my-id
   :END:
Run Code Online (Sandbox Code Playgroud)

我使用以下代码配置自定义议程命令,该命令不起作用

(setq org-agenda-custom-commands
           '(("c" "MY Agenda"
          ((tags "ID")))))
Run Code Online (Sandbox Code Playgroud)

我已经阅读了组织手册http://orgmode.org/manual/Matching-tags-and-properties.html#Matching-tags-and-properties,但仍然无法弄清楚如何去做.

Jon*_*pin 6

您的代码要求它查找标题上:ID:标记的所有标题.要查找属性,必须使用属性匹配功能,该功能在链接的手册页上略低一些.

因为我假设你需要它来匹配任何ID而不仅仅是一个特定的ID你必须通过匹配(=)或不匹配(<>)大括号匹配后面的正则表达式使用正则表达式匹配.

要匹配您的ID属性,您需要正则表达式ID={.+}.如果您用作.*匹配项,它也会匹配标题而没有任何ID属性.如果您想要匹配一些具有共同点的ID,则可以调整正则表达式以匹配它们.

所以你的自定义议程命令必须是:

(setq org-agenda-custom-commands
           '(("c" "MY Agenda"
          ((tags "ID={.+}")))))
Run Code Online (Sandbox Code Playgroud)