如何将Emacs捕获模板加载到打开的文件中?

时间:2013-11-05 23:10:41

标签: emacs org-mode

请原谅我对Emacs Lisp的新见事。我开始使用org-mode并喜欢它。在我的工作流程中,我正在尝试将模板加载到打开的缓冲区中,或者提示模板询问保存文件的位置。

例如,我有一个'会议'模板。当我调用该模板时,我希望提示输入文件名,然后将模板加载到该文件中,文件将加载到Emacs中。

我如何在Emacs中执行此操作?

1 个答案:

答案 0 :(得分:0)

这是迄今为止我能想到的最好的结果:

(defun caputre-create-meeting-link ()
  (let ((new-file (read-file-name "Save meeting info in ")))
    (run-with-timer 1 nil (eval `(lambda () (find-file ,new-file))))
     (format "[[%s]]" new-file)))

(setq org-capture-templates
      '(("a" "Insert a link to meeting" plain
         (file "~/org/notes.org")
         "Meeting info: %(caputre-create-meeting-link)"
         :immediate-finish t)))

或多或少地得到你描述的效果。但你可以简单地用%(capture-create-meeting-link)替换%^L然后用链接上的 C-c C-o 来打开它。