Config: fix org-journal template

This commit is contained in:
User
2026-04-14 19:08:53 +08:00
parent 994773ddb9
commit 1af78f99b7
2 changed files with 59 additions and 58 deletions

View File

@@ -290,8 +290,8 @@ Disable jinx-mode if it's enable and global-jinx-mode is disable , otherwise tog
(global-set-key (kbd "C-;") 'embark-act) (global-set-key (kbd "C-;") 'embark-act)
;; vterm ;; vterm
(global-set-key (kbd "C-c v") 'vterm)
(with-eval-after-load 'vterm (with-eval-after-load 'vterm
(global-set-key (kbd "C-c v") 'vterm)
(define-key vterm-mode-map (kbd "M-]") nil) (define-key vterm-mode-map (kbd "M-]") nil)
(define-key vterm-mode-map (kbd "C-x C-x") 'vterm-send-C-x)) (define-key vterm-mode-map (kbd "C-x C-x") 'vterm-send-C-x))

View File

@@ -42,7 +42,7 @@
(format-time-string "%Y-%m-%d" time) (format-time-string "%Y-%m-%d" time)
(format-time-string "%a" time) (format-time-string "%a" time)
(format-time-string "%Y-%m-%d %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\"")
(when *is-windows* (when *is-windows*
(setq org-journal-dir "h:/emacs/my-org-daily/")) (setq org-journal-dir "h:/emacs/my-org-daily/"))
@@ -58,6 +58,7 @@
(let ((day-end (save-excursion (org-end-of-subtree) (point)))) (let ((day-end (save-excursion (org-end-of-subtree) (point))))
(unless (search-forward "** daily" day-end t) (unless (search-forward "** daily" day-end t)
(goto-char day-end) (goto-char day-end)
(unless (bolp) (insert "\n"))
(insert "\n\n** daily\n\n\n") (insert "\n\n** daily\n\n\n")
(insert "** tasks\n"))))) (insert "** tasks\n")))))
@@ -82,7 +83,7 @@
(funcall org-journal-find-file org-journal-file) (funcall org-journal-find-file org-journal-file)
(unless (org-journal--daily-p) (unless (org-journal--daily-p)
(org-journal--goto-entry date))) (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) (defun my/org-journal-mark-old-todos-as-comment (entries)
"Change TODO entry's TODO keyword to COMMENT after carryover." "Change TODO entry's TODO keyword to COMMENT after carryover."
@@ -92,48 +93,48 @@
org-todo-keywords-1)) org-todo-keywords-1))
(todo-pattern (when todo-keywords (todo-pattern (when todo-keywords
(regexp-opt todo-keywords 'words)))) (regexp-opt todo-keywords 'words))))
(when todo-pattern (when todo-pattern
(mapc (lambda (entry) (mapc (lambda (entry)
(let ((start (car entry)) (let ((start (car entry))
(end (set-marker (make-marker) (cadr entry)))) (end (set-marker (make-marker) (cadr entry))))
(goto-char start) (goto-char start)
(while (re-search-forward (concat "^\\(\\*+ \\)" todo-pattern) end t) (while (re-search-forward (concat "^\\(\\*+ \\)" todo-pattern) end t)
(replace-match "\\1COMMENT" t nil)) (replace-match "\\1COMMENT" t nil))
(set-marker end nil))) (set-marker end nil)))
(reverse entries)))) (reverse entries))))
(save-buffer))) (save-buffer)))
(setq org-journal-handle-old-carryover-fn #'my/org-journal-mark-old-todos-as-comment)) (setq org-journal-handle-old-carryover-fn #'my/org-journal-mark-old-todos-as-comment))
;; 在org-journal加载cns-mode ;; 在org-journal加载cns-mode
(add-hook 'org-journal-mode-hook (add-hook 'org-journal-mode-hook
(lambda () (lambda ()
(global-cns-mode-enable-in-buffer))) (global-cns-mode-enable-in-buffer)))
;; 一些随org-mode加载的基础配置 ;; 一些随org-mode加载的基础配置
(add-hook 'org-mode-hook (add-hook 'org-mode-hook
(lambda () (lambda ()
(require 'org-tempo) (require 'org-tempo)
(org-indent-mode) (org-indent-mode)
(setq-local electric-pair-inhibit-predicate (setq-local electric-pair-inhibit-predicate
(lambda (char) (lambda (char)
(or (eq char ?<) (or (eq char ?<)
(electric-pair-default-inhibit char)))))) (electric-pair-default-inhibit char))))))
(with-eval-after-load 'org (with-eval-after-load 'org
(require 'org-download) (require 'org-download)
(setq org-return-follows-link t)) (setq org-return-follows-link t))
;; 预加载防止windows的org-mode加载卡顿 ;; 预加载防止windows的org-mode加载卡顿
(if *is-windows* (if *is-windows*
(progn (run-with-idle-timer (progn (run-with-idle-timer
0.5 nil 0.5 nil
(lambda () (lambda ()
(with-temp-buffer (with-temp-buffer
(org-mode) (org-mode)
(org-mode)) (org-mode))
(message "Org preloaded"))))) (message "Org preloaded")))))
;; 设置标题字体大小 ;; 设置标题字体大小
;; (dolist (face org-level-faces) ;; (dolist (face org-level-faces)
@@ -200,34 +201,34 @@
(setq org-agenda-custom-commands (setq org-agenda-custom-commands
'(("pa" "Priority >= A" '(("pa" "Priority >= A"
((tags-todo "+PRIORITY=\"A\""))) ((tags-todo "+PRIORITY=\"A\"")))
("pb" "Priority >= B" ("pb" "Priority >= B"
((tags-todo "+PRIORITY<=\"B\""))) ((tags-todo "+PRIORITY<=\"B\"")))
("pc" "Priority >= C" ("pc" "Priority >= C"
((tags-todo "+PRIORITY<=\"C\""))) ((tags-todo "+PRIORITY<=\"C\"")))
("qd" "TODO entries sort by closed time" ("qd" "TODO entries sort by closed time"
((org-ql-block '(closed) ((org-ql-block '(closed)
((org-ql-block-header "Closed TODOs") ((org-ql-block-header "Closed TODOs")
(org-ql-sort '(closed)) (org-ql-sort '(closed))
(org-super-agenda-groups (org-super-agenda-groups
'((:auto-ts t))))))) '((:auto-ts t)))))))
("qS" "SOMEDAYs" ("qS" "SOMEDAYs"
((org-ql-block '(todo "SOMEDAY") ((org-ql-block '(todo "SOMEDAY")
((org-ql-block-header "SOMEDAYs") ((org-ql-block-header "SOMEDAYs")
(org-ql-sort '(start-time)) (org-ql-sort '(start-time))
(org-super-agenda-groups (org-super-agenda-groups
'((:auto-ts t))))))) '((:auto-ts t)))))))
("qs" "STARTEDs" ("qs" "STARTEDs"
((org-ql-block '(todo "STARTED") ((org-ql-block '(todo "STARTED")
((org-ql-block-header "STARTEDs") ((org-ql-block-header "STARTEDs")
(org-ql-sort '(start-time)) (org-ql-sort '(start-time))
(org-super-agenda-groups (org-super-agenda-groups
'((:auto-ts t))))))) '((:auto-ts t)))))))
("qt" "TODOs sort by start time" ("qt" "TODOs sort by start time"
((org-ql-block '(todo) ((org-ql-block '(todo)
((org-ql-block-header "TODOs") ((org-ql-block-header "TODOs")
(org-ql-sort '(start-time)) (org-ql-sort '(start-time))
(org-super-agenda-groups (org-super-agenda-groups
'((:auto-ts t))))))))) '((:auto-ts t)))))))))
(setq org-tag-alist '( (setq org-tag-alist '(
("scheme" . ?s) ("scheme" . ?s)
@@ -279,7 +280,7 @@
;; 批量调整表格 ;; 批量调整表格
(defun org-table-align-all () (defun org-table-align-all ()
"Ajust all table in current buffer." "Ajust all table in current buffer."
(interactive) (interactive)
(save-excursion (save-excursion
(goto-char (point-min)) (goto-char (point-min))
@@ -316,14 +317,14 @@ See `org-capture-templates' for more information."
(file+headline "h:/emacs/hugo/this-is-my-blog/all-blog.org" "Blog Ideas") (file+headline "h:/emacs/hugo/this-is-my-blog/all-blog.org" "Blog Ideas")
(function org-hugo-new-subtree-post-capture-template))) (function org-hugo-new-subtree-post-capture-template)))
(add-to-list 'org-capture-templates (add-to-list 'org-capture-templates
'("h" ;`org-capture' binding + h '("h" ;`org-capture' binding + h
"Hugo post" "Hugo post"
entry entry
;; It is assumed that below file is present in `org-directory' ;; It is assumed that below file is present in `org-directory'
;; and that it has a "Blog Ideas" heading. It can even be a ;; and that it has a "Blog Ideas" heading. It can even be a
;; symlink pointing to the actual location of all-posts.org! ;; symlink pointing to the actual location of all-posts.org!
(file+headline "~/org/hugo/this-is-my-blog/all-blog.org" "Blog Ideas") (file+headline "~/org/hugo/this-is-my-blog/all-blog.org" "Blog Ideas")
(function org-hugo-new-subtree-post-capture-template))))) (function org-hugo-new-subtree-post-capture-template)))))
;; 快速部署 ;; 快速部署
(defun my-blog-publish () (defun my-blog-publish ()
@@ -350,8 +351,8 @@ See `org-capture-templates' for more information."
(message "Pushing to remote...") (message "Pushing to remote...")
(let ((exit-code (eshell-command "git push"))) (let ((exit-code (eshell-command "git push")))
(if (eq exit-code t) (if (eq exit-code t)
(message "Push may have failed or nothing to push, check *Messages* buffer for details") (message "Push may have failed or nothing to push, check *Messages* buffer for details")
(message "Push successfully %s" timestamp))))) (message "Push successfully %s" timestamp)))))
(global-set-key (kbd "C-c o p") 'my-blog-publish) (global-set-key (kbd "C-c o p") 'my-blog-publish)