Config: switch consult-notes to fork version, add delight to clean mode-line, tidy package configs

This commit is contained in:
User
2026-05-09 16:55:32 +08:00
parent f419304684
commit 5ee06f8500
5 changed files with 137 additions and 102 deletions

View File

@@ -8,11 +8,11 @@
;; 一些随org-mode加载的基础配置
(add-hook 'org-mode-hook
(lambda ()
(require 'org-tempo)
(org-indent-mode)
(lambda ()
(require 'org-tempo)
(org-indent-mode)
(visual-line-mode)
(setq-local electric-pair-inhibit-predicate
(setq-local electric-pair-inhibit-predicate
(lambda (char)
(or (eq char ?<)
(electric-pair-default-inhibit char))))))
@@ -20,12 +20,12 @@
;; 预加载防止windows的org-mode加载卡顿
(if *is-windows*
(progn (run-with-idle-timer
0.5 nil
(lambda ()
(with-temp-buffer
(org-mode)
(org-mode))
(message "Org preloaded")))))
0.5 nil
(lambda ()
(with-temp-buffer
(org-mode)
(org-mode))
(message "Org preloaded")))))
;; 设置标题字体大小
;; (with-eval-after-load 'org
@@ -51,14 +51,11 @@
(cond
(*is-windows*
(setq org-agenda-files '("h:/emacs/hugo/this-is-my-blog/all-blog.org"
"h:/emacs/my-org-daily/"
"h:/emacs/my-org-note/")))
"h:/emacs/my-org-daily/")))
(*is-mac*
(setq org-agenda-files '("~/org/my-org-daily"
"~/org/my-org-note/")))
(setq org-agenda-files '("~/org/my-org-daily")))
(*is-linux*
(setq org-agenda-files '("~/org/my-org-daily/"
"~/org/my-org-note/"))))
(setq org-agenda-files '("~/org/my-org-daily/"))))
(setq org-agenda-span 'day)
(setq org-default-priority ?C)
@@ -91,11 +88,16 @@
;; consult-notes
(use-package consult-notes
:straight
'(consult-notes :fork (:host github :repo "Andsy10/consult-notes"))
:init
(consult-notes-denote-mode)
:config
(setq consult-notes-file-dir-sources '(("Org Notes" ?n "~/org/my-org-note/" :hidden t)
("Org Journal" ?j "~/org/my-org-daily/" :hidden t))))
("Org Journal" ?j "~/org/my-org-daily/" :hidden t)))
(setq consult-notes-denote-display-keywords-indicator "_")
(setq consult-notes-denote-display-id-format 'date)
(setq consult-notes-denote-display-signature t))
;; org-download
(use-package org-download
@@ -118,7 +120,7 @@
(use-package org-journal
:config
(setq org-journal-file-format "%Y-%m-%d.org"
org-journal-file-header "#+category: journal\n#+STARTUP: content\n\n"
org-journal-file-header "#+category: journal\n#+STARTUP: content\n\n"
org-journal-time-prefix "\n*** TODO "
org-journal-time-format "%m-%d \n<%Y-%m-%d %a %H:%M:%S>\n"
org-journal-hide-entries-p t
@@ -127,7 +129,7 @@
(format-time-string "%Y-%m-%d" time)
(format-time-string "%a" time)
(format-time-string "%Y-%m-%d %a" time)))
org-journal-carryover-items "TODO=\"TODO\"|TODO=\"STARTED\"|TODO=\"WAITING\"|TODO=\"SOMEDAY\"")
org-journal-carryover-items "TODO=\"TODO\"|TODO=\"STARTED\"|TODO=\"WAITING\"|TODO=\"SOMEDAY\"")
(if *is-windows*
(setq org-journal-dir "h:/emacs/my-org-daily/")
@@ -166,7 +168,7 @@
(funcall org-journal-find-file org-journal-file)
(unless (org-journal--daily-p)
(org-journal--goto-entry date)))
(message "No journal entry for this date."))))
(message "No journal entry for this date."))))
(defun my/org-journal-mark-old-todos-as-comment (entries)
"Change TODO entry's TODO keyword to COMMENT after carryover."
@@ -176,23 +178,23 @@
org-todo-keywords-1))
(todo-pattern (when todo-keywords
(regexp-opt todo-keywords 'words))))
(when todo-pattern
(when todo-pattern
(mapc (lambda (entry)
(let ((start (car entry))
(end (set-marker (make-marker) (cadr entry))))
(end (set-marker (make-marker) (cadr entry))))
(goto-char start)
(while (re-search-forward (concat "^\\(\\*+ \\)" todo-pattern) end t)
(replace-match "\\1COMMENT" t nil))
(set-marker end nil)))
(reverse entries))))
(reverse entries))))
(save-buffer)))
(setq org-journal-handle-old-carryover-fn #'my/org-journal-mark-old-todos-as-comment)
;; 在org-journal加载cns-mode
(add-hook 'org-journal-mode-hook
(lambda ()
(global-cns-mode-enable-in-buffer))))
(lambda ()
(global-cns-mode-enable-in-buffer))))
;; org-ql
(use-package org-ql
@@ -226,29 +228,29 @@
(setq org-agenda-custom-commands
'(("pa" "Priority >= A"
((tags-todo "+PRIORITY=\"A\"")))
("pb" "Priority >= B"
((tags-todo "+PRIORITY<=\"B\"")))
("pc" "Priority >= C"
((tags-todo "+PRIORITY<=\"C\"")))
("qd" "TODO entries sort by closed time"
("pb" "Priority >= B"
((tags-todo "+PRIORITY<=\"B\"")))
("pc" "Priority >= C"
((tags-todo "+PRIORITY<=\"C\"")))
("qd" "TODO entries sort by closed time"
((org-ql-block '(closed)
((org-ql-block-header "Closed TODOs")
(org-ql-sort '(closed))
(org-super-agenda-groups
'((:auto-ts t)))))))
("qS" "SOMEDAYs"
("qS" "SOMEDAYs"
((org-ql-block '(todo "SOMEDAY")
((org-ql-block-header "SOMEDAYs")
(org-ql-sort '(start-time))
(org-super-agenda-groups
'((:auto-ts t)))))))
("qs" "STARTEDs"
("qs" "STARTEDs"
((org-ql-block '(todo "STARTED")
((org-ql-block-header "STARTEDs")
(org-ql-sort '(start-time))
(org-super-agenda-groups
'((:auto-ts t)))))))
("qt" "TODOs sort by start time"
("qt" "TODOs sort by start time"
((org-ql-block '(todo)
((org-ql-block-header "TODOs")
(org-ql-sort '(start-time))
@@ -380,8 +382,8 @@ See `org-capture-templates' for more information."
(message "Pushing to remote...")
(let ((exit-code (eshell-command "git push")))
(if (eq exit-code t)
(message "Push may have failed or nothing to push, check *Messages* buffer for details")
(message "Push successfully %s" timestamp)))))
(message "Push may have failed or nothing to push, check *Messages* buffer for details")
(message "Push successfully %s" timestamp)))))
;; 预览博客
(defun my-blog-preview ()