diff --git a/tools/doom/config.el b/tools/doom/config.el index 8bf26d8..0ea0060 100644 --- a/tools/doom/config.el +++ b/tools/doom/config.el @@ -133,10 +133,12 @@ (if (eq system-type 'gnu/linux) (use-package! rime - :config - (setq default-input-method "rime") - (add-hook! (org-mode markdown-mode) (activate-input-method default-input-method)) - (setq rime-user-data-dir (expand-file-name "emacs-rime" (getenv "XDG_CONFIG_HOME"))) + :custom + (rime-user-data-dir (expand-file-name "emacs-rime" (getenv "XDG_CONFIG_HOME"))) + ; (rime-share-data-dir "~/.local/share/fcitx5/rime") + (default-input-method "rime") + ;; :config + ;; (add-hook! (org-mode markdown-mode) (activate-input-method default-input-method)) )) (load! "calendar.el") diff --git a/tools/emacs.d/.gitignore b/tools/emacs.d/.gitignore index f889e69..62c7ec6 100644 --- a/tools/emacs.d/.gitignore +++ b/tools/emacs.d/.gitignore @@ -26,3 +26,5 @@ bookmarks .cache eln-cache org-persist + +local.el diff --git a/tools/emacs.d/lisp/init-evil.el b/tools/emacs.d/lisp/init-evil.el index 183c22a..470917a 100644 --- a/tools/emacs.d/lisp/init-evil.el +++ b/tools/emacs.d/lisp/init-evil.el @@ -44,8 +44,10 @@ (global-evil-leader-mode) (evil-leader/set-leader "") (evil-leader/set-key - "b" 'buffer-menu - "ft" 'treemacs)) + "ft" 'treemacs + "fc" '(dired user-emacs-directory) + "b" 'buffer-menu + )) ;; Evil Commentary: Use gc to toggle comments (use-package evil-commentary diff --git a/tools/emacs.d/lisp/init-org.el b/tools/emacs.d/lisp/init-org.el index 086cca9..2259899 100644 --- a/tools/emacs.d/lisp/init-org.el +++ b/tools/emacs.d/lisp/init-org.el @@ -98,13 +98,13 @@ ;; For CJK users ;; Insert zero width space around the emphasis symbols, this might be useful for ;; languages that does not rely on space -(defun my/insert-emphasis-with-zws (char) +(defun js0ny/insert-emphasis-with-zws (char) (interactive "c") (insert ?\u200B char) (save-excursion (insert char ?\u200B))) -(global-set-key (kbd "C-c b") (lambda () (interactive) (my/insert-emphasis-with-zws ?*))) -(global-set-key (kbd "C-c i") (lambda () (interactive) (my/insert-emphasis-with-zws ?/))) +(global-set-key (kbd "C-c b") (lambda () (interactive) (js0ny/insert-emphasis-with-zws ?*))) +(global-set-key (kbd "C-c i") (lambda () (interactive) (js0ny/insert-emphasis-with-zws ?/))) ;; Pomodoro for org clock (use-package org-pomodoro) @@ -213,7 +213,7 @@ ;; Integrate Emacs Timer with System Notifications ;; 定义通知函数 -(defun my/org-clock-notification (title message &optional icon) +(defun js0ny/org-clock-notification (title message &optional icon) "发送一个系统通知" (alert message :title title @@ -221,7 +221,7 @@ :category 'org-clock)) ;; 添加定时器检查函数 -(defun my/org-clock-check-timer () +(defun js0ny/org-clock-check-timer () "检查当前正在运行的 clock 是否到期" (when (org-clocking-p) (let* ((clocked-time (org-clock-get-clocked-time)) @@ -230,45 +230,24 @@ "0"))) (remaining (- effort clocked-time))) (when (and (> effort 0) (<= remaining 0)) - (my/org-clock-notification + (js0ny/org-clock-notification "Org Clock 提醒" (format "任务 '%s' 的预计时间已到!" (org-clock-get-clock-string))))))) ;; 设置定时器,每分钟检查一次 -(run-with-timer 0 60 #'my/org-clock-check-timer) +(run-with-timer 0 60 #'js0ny/org-clock-check-timer) ;; 在 org-clock-in-hook 中添加检查 (add-hook 'org-clock-in-hook (lambda () (let ((effort (org-entry-get (point) "Effort"))) (when effort - (my/org-clock-notification + (js0ny/org-clock-notification "开始计时" (format "开始计时任务: %s\n预计用时: %s" (org-get-heading t t t t) effort)))))) -(use-package org-roam - :ensure t - :custom - (org-roam-directory (file-truename (concat org-directory "roam"))) - :bind (("C-c n l" . org-roam-buffer-toggle) - ("C-c n f" . org-roam-node-find) - ("C-c n g" . org-roam-graph) - ("C-c n i" . org-roam-node-insert) - ("C-c n c" . org-roam-capture) - ;; Dailies - ("C-c n j" . org-roam-dailies-capture-today)) - :config - ;; If you're using a vertical completion framework, you might want a more informative completion interface - (setq org-roam-node-display-template (concat "${title:*} " (propertize "${tags:10}" 'face 'org-tag))) - (setq org-roam-db-location (expand-file-name "org-roam.db" user-emacs-data)) - (org-roam-db-autosync-mode) - ;; If using org-roam-protocol - (require 'org-roam-protocol)) - - (provide 'init-org) -