Emacs hydra插入/追加文本

Emacs hydra插入/追加文本,emacs,tags,hydra,Emacs,Tags,Hydra,我希望能够在捕获TODO或文件时插入带有hydra的标记。我试着用insert buffer命令来做,但它似乎不起作用。但这似乎也不现实。。。 是否有一个命令可用于附加config.el中定义的文本或一个文件中的不同字符串 (defhydra hydra-tags (:color pink :hint nil) " ^Tag^ ^^^^^^^^- _h_: home _w_: work _a_: assignments _f_:

我希望能够在捕获TODO或文件时插入带有hydra的标记。我试着用insert buffer命令来做,但它似乎不起作用。但这似乎也不现实。。。 是否有一个命令可用于附加config.el中定义的文本或一个文件中的不同字符串

 (defhydra hydra-tags (:color pink
                             :hint nil)
  "
^Tag^
^^^^^^^^-
_h_: home
_w_: work
_a_: assignments 
_f_: family
"
  ("h" insert-buffer "~/org/tags/home.txt")
  ("w" insert-buffer "~/org/tags/work.txt")
  ("a" insert-buffer "~/org/tags/assignments.txt")
  ("f" insert-buffer "~/org/tags/family.txt")
  ("q" quit-window "quit" :color blue))

(define-key org-capture-mode-map "." 'hydra-tags/body)

我是emacs的新手,对lisp一无所知,但我发现用一个简单的lisp函数就可以很容易地做到这一点

我将分享我最终得到的代码。欢迎分享任何建议


我是emacs的新手,对lisp一无所知,但我发现用一个简单的lisp函数就可以很容易地做到这一点

我将分享我最终得到的代码。欢迎分享任何建议


您试图插入的标签是否列在这些文件中?是的,每个文件中有一个单词。虽然它似乎在添加当前打开的缓冲区链接,而不是定义的文件内容。您试图插入的标记是否列在这些文件中?是的,每个文件有一个单词。虽然它似乎添加了当前打开的缓冲区链接,而不是定义的文件内容。
(defhydra hydra-tags (:hint none)
 "
^Tag
^----------------
_h_: home
_j_: work
_k_: assignments
_l_: family
"
 ("h" (insert ":home:"))
 ("j" (insert ":work:"))
 ("k" (insert ":assignments:"))
 ("l" (insert ":family:"))
 ("q" quit-window "quit" :color blue))

(global-set-key (kbd "C-c k") 'hydra-tags/body)