如图, 我的工作笔记是以日期为标题 , 有没有一种方法可以高亮标题中的当前日期, 比如高亮2023-02-07这几个字 .
可以看看 highlight-regexp
函数。
(font-lock-add-keywords 'org-mode
'(("\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}\\)" 1 'your-face append))
'append)
把 your-face
改成你想要的 face 就行
如果想要更好看的效果,可以使用 svg-tag-mode
1 个赞
org-morden 的正则是写死的,不方便自定义高亮的部分
今天就是2.7,楼主应该是想日期自动更新,始终高亮的是今天的,而不是写死,这个应该不太好做
试试这个。
(defun my-hl-today ()
(interactive)
(highlight-phrase (format-time-string "%F" (current-time))))
(global-set-key [f9] 'my-hl-today)
(defun my-unhl-today ()
(interactive)
(unhighlight-regexp (format-time-string "%F" (current-time))))
(global-set-key [f10] 'my-unhl-today)
如果想绑定 org-mod, 调用上面提到的 font-lock-add-keywords
函数应该就可以。把当前日期作为一个可变关键字。
chatgpt给了这个代码 , 但是写在.emacs里不起作用 , 大佬可以帮忙看一下吗 ?
;; define the function
(defun highlight-date-in-org-mode ()
(interactive)
(font-lock-add-keywords 'org-mode (list (list (concat "^*\s-\(.\s-\)" (format-time-string "%F") "\s-.$") 1 '(face hi-yellow)))))
;; enable the font-lock in org-mode
(add-hook 'org-mode-hook 'highlight-date-in-org-mode)