From f7f35ecf156a36d0824807317404cf6015a2861a Mon Sep 17 00:00:00 2001 From: Fabio Scotto di Santolo Date: Tue, 21 Apr 2026 14:31:56 +0200 Subject: [PATCH] Align Org styling and templates --- dotfiles/desktop/.emacs.d/lisp/lang/org.el | 61 +++++++++++++++++-- .../desktop/.emacs.d/snippets/org-mode/src | 4 +- 2 files changed, 59 insertions(+), 6 deletions(-) diff --git a/dotfiles/desktop/.emacs.d/lisp/lang/org.el b/dotfiles/desktop/.emacs.d/lisp/lang/org.el index 251e4fb..c0f3d38 100644 --- a/dotfiles/desktop/.emacs.d/lisp/lang/org.el +++ b/dotfiles/desktop/.emacs.d/lisp/lang/org.el @@ -12,15 +12,63 @@ (defvar org-calendar-file (expand-file-name "calendar.org" org-directory) "Default Org calendar file.") +(defface +org-todo-active + '((t (:foreground "#51afef" :weight bold))) + "Face for active Org TODO states.") + +(defface +org-todo-project + '((t (:foreground "#c678dd" :weight bold))) + "Face for project Org TODO states.") + +(defface +org-todo-onhold + '((t (:foreground "#ECBE7B" :weight bold))) + "Face for waiting Org TODO states.") + +(defface +org-todo-cancel + '((t (:foreground "#ff6c6b" :weight bold))) + "Face for cancelled Org TODO states.") + (use-package org :init (setq org-clock-mode-line-total 'today + org-fontify-done-headline t org-fontify-quote-and-verse-blocks t org-indent-mode t org-agenda-skip-unavailable-files t org-return-follows-link t org-startup-folded 'content - org-todo-keywords '((sequence "🆕(t)" "▶️(s)" "⏳(w)" "🔎(p)" "|" "✅(d)" "🗑(c)" "👨(g)")) + org-todo-keywords + '((sequence + "TODO(t)" + "PROJ(p)" + "LOOP(r)" + "STRT(s)" + "WAIT(w)" + "HOLD(h)" + "IDEA(i)" + "|" + "DONE(d)" + "KILL(k)") + (sequence + "[ ](T)" + "[-](S)" + "[?](W)" + "|" + "[X](D)") + (sequence + "|" + "OKAY(o)" + "YES(y)" + "NO(n)")) + org-todo-keyword-faces + '(("[-]" . +org-todo-active) + ("STRT" . +org-todo-active) + ("[?]" . +org-todo-onhold) + ("WAIT" . +org-todo-onhold) + ("HOLD" . +org-todo-onhold) + ("PROJ" . +org-todo-project) + ("NO" . +org-todo-cancel) + ("KILL" . +org-todo-cancel)) org-export-backends '(html latex odt md ascii icalendar) org-latex-pdf-process '("pdflatex -interaction nonstopmode %f" "pdflatex -interaction nonstopmode %f") @@ -30,11 +78,11 @@ org-default-notes-file (expand-file-name "inbox.org" org-directory) org-agenda-files (mapcar (lambda (file) (expand-file-name file org-directory)) - '("inbox.org" "tasks.org" "calendar.org" "notes.org")) + '("inbox.org" "tasks.org" "calendar.org" "notes.org")) org-capture-templates '(("t" "Task" entry (file org-default-notes-file) - "* 🆕 %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n") + "* TODO %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n") ("n" "Note" entry (file org-notes-file) "* %U %?\n") @@ -42,8 +90,13 @@ (file org-calendar-file) "* %?\nSCHEDULED: %^T\n"))) :config + (require 'org-tempo) (add-hook 'org-mode-hook 'org-indent-mode)) +(use-package org-appear + :ensure t + :hook (org-mode . org-appear-mode)) + (use-package org-bullets :ensure t :init @@ -77,6 +130,6 @@ '((mermaid . t) (scheme . t)))) -(provide 'org) +(provide 'lang/org) ;;; org.el ends here diff --git a/dotfiles/desktop/.emacs.d/snippets/org-mode/src b/dotfiles/desktop/.emacs.d/snippets/org-mode/src index 47e85b6..7657706 100644 --- a/dotfiles/desktop/.emacs.d/snippets/org-mode/src +++ b/dotfiles/desktop/.emacs.d/snippets/org-mode/src @@ -1,5 +1,5 @@ -#name : insert a source (BASH) declaration +#name : insert a source block # -- -#+begin_src markdown +#+begin_src ${1:emacs-lisp} $0 #+end_src