问题描述
我在笔记中使用带有 org-mode 的 emacs,并为我的会议笔记使用了以下捕获模板。我想在会议后使用 columnview 创建对任务的快速概览。我无法转义 columnview 命令中的特殊字符(在 Actions 下:下面),并且在 emacs 中运行 elisp 代码时出现语法错误。
(defvar my/org-meeting-template "** %u %^{meeting_title} %^G
:属性:
:exportHeadlineOnly: t
:EXPORT_AUTHOR: 作者
:EXPORT_OPTIONS: H:0 num:nil toc:nil author:t 时间戳:nil creator:nil 日期:nil
:EXPORT_FILE_NAME: %
:ID: ID_%
:结束:
创建 %U
*** 参加者:
- [X] 作者
- [ ] %? *** 议程:
*** 注释:
*** 操作:
#+BEGIN: columnview :id ID_% :match "%%Todo|DONE" :format "%%ITEM(What) %%TAGS(Who) %% DEADLINE(When) %%Todo(State)")
#+结束
" "会议模板")
(setq org-capture-templates
`(("m" "会议"条目(文件+标题"~/notes.org" "会议笔记")
,my/org-meeting-template)
))
如果我粘贴以下几行:
#+BEGIN: columnview :id ID_20200209_120000 :match "/Todo|DONE" :format "%ITEM(What) %TAGS(Who) %DEADLINE(When) %Todo(State)"
#+结束:
在我捕获会议后一切正常,当我在列视图中按 C-c C-c 时,我会得到一个很好的任务表、截止日期等。但是,我真的很想用我的捕获模板添加行。
有什么想法吗?
亲切的问候, 阿格纳
解决方法
所以,我的问题是在上面的组织模式模板中转义“%”。这应该在 '%' 之后使用 '\\' 来完成。像这样: %\\。 *Actions: 下各行的正确语法现在是:
#+BEGIN: columnview :id ID% :match \"/TODO|DONE\" :format \"%\\ITEM(What) %\ \TAGS(Who) %\\DEADLINE(When) %\\TODO(State)\"
#+结束: