emacs orgmode中的自定义时间戳

Edw*_*ard 5 emacs timestamp elisp org-mode

我想在emacs orgmode中以自定义格式插入时间戳.我想以这种形式插入当前时间(没有日期!):[HH:MM],按下.我是lisp的新手,无法弄清楚如何做到这一点.我的-file的起点是这样的:C-c -~/.emacs

(defun org-my-custom-timestamp ()
  (interactive)
  ( :SOME_CODE: )
)


(define-key global-map "\C-c-" 'org-my-custom-timestamp)
Run Code Online (Sandbox Code Playgroud)

现在这只是我的自定义函数的定义,称为org-my-custom-timestamp"交互"和快捷方式分配.但是,我尝试了各种各样的事情,:SOME_CODE:没有任何成功.

可以在功能中使用什么使其以所描述的方式工作?

是否有经验丰富的emacs用户甚至会考虑这种方式来解决它的实际问题,还是有更智能的方法来实现它?也许org-mode-internal?

dki*_*kim 5

组织模式的本地键映射有一个绑定的条目C-c -,所以我们必须更改它而不是全局的:

(defun org-my-custom-timestamp ()
  (interactive)
  (insert (format-time-string "[%H:%M]")))
(add-hook 'org-mode-hook
          (lambda ()
            (local-set-key "\C-c-" 'org-my-custom-timestamp)))
Run Code Online (Sandbox Code Playgroud)

请再次注意,它将使用您自己的org-ctrl-c-minus命令替换C-c -在Org模式下默认绑定的命令.