Compare commits

...

2 commits

2 changed files with 171 additions and 27 deletions

View file

@ -139,6 +139,9 @@
(use-feature cus-edit (use-feature cus-edit
:init (setopt custom-file null-device)) :init (setopt custom-file null-device))
(use-feature custom
:config (setopt custom-safe-themes t))
;; Customize fill column indicator ;; Customize fill column indicator
(use-feature display-fill-column-indicator (use-feature display-fill-column-indicator
:hook ((conf-mode :hook ((conf-mode
@ -229,7 +232,8 @@
(unless (file-directory-p auto_save_directory) (unless (file-directory-p auto_save_directory)
(make-directory auto_save_directory)) (make-directory auto_save_directory))
(setopt backup-directory-alist `((".*" . ,auto_save_directory)) (setopt backup-directory-alist `((".*" . ,auto_save_directory))
auto-save-file-name-transforms `((".*" ,auto_save_directory t)))) auto-save-list-file-prefix (concat auto_save_directory "saves-"))
auto-save-file-name-transforms `((".*" ,auto_save_directory t)))
(setopt backup-by-copying t (setopt backup-by-copying t
confirm-kill-processes nil confirm-kill-processes nil
delete-old-versions t delete-old-versions t
@ -346,8 +350,7 @@
:config :config
(add-hook 'before-save-hook #'whitespace-cleanup) (add-hook 'before-save-hook #'whitespace-cleanup)
(setopt whitespace-line-column nil (setopt whitespace-line-column nil
whitespace-style '(face whitespace-style '(lines-char
lines-char
missing-newline-at-eof missing-newline-at-eof
space-after-tab space-after-tab
space-before-tab space-before-tab
@ -375,11 +378,12 @@
;; Catppuccin theme ;; Catppuccin theme
(use-package catppuccin-theme (use-package catppuccin-theme
:disabled
:config :config
(setopt custom-safe-themes t (setopt catppuccin-flavor 'macchiato)
catppuccin-flavor 'macchiato) ;; (catppuccin-reload)
(catppuccin-reload) ;; (load-theme 'catppuccin t)
(load-theme 'catppuccin t)) )
;; C/C++ formatting ;; C/C++ formatting
;; Ad hoc format file: clang-format -style=webkit -dump-config > .clang-format ;; Ad hoc format file: clang-format -style=webkit -dump-config > .clang-format
@ -473,6 +477,7 @@
;; In-buffer completion ;; In-buffer completion
(use-package company (use-package company
:disabled
:bind :bind
(:map company-active-map (:map company-active-map
("RET" . nil) ("RET" . nil)
@ -488,7 +493,7 @@
;; FIXME - I crash emacs ;; FIXME - I crash emacs
(use-package corfu (use-package corfu
:disabled ;; :disabled
:bind :bind
(:map corfu-map (:map corfu-map
("M-SPC" . corfu-insert-separator) ("M-SPC" . corfu-insert-separator)
@ -501,6 +506,30 @@
:defer 3 :defer 3
:ensure (corfu :files (:defaults "extensions/*"))) :ensure (corfu :files (:defaults "extensions/*")))
(use-package doom-themes
:disabled
:config
(setopt doom-themes-enable-bold t
doom-themes-enable-italic t))
(use-package nimbus-theme
:config (load-theme 'nimbus))
(use-package ef-themes
:disabled
:config
(setopt ef-themes-headings '((0 variable-pitch light 1.9)
(1 variable-pitch light 1.8)
(2 variable-pitch regular 1.7)
(3 variable-pitch regular 1.6)
(4 variable-pitch regular 1.5)
(5 variable-pitch 1.4) ; absence of weight means `bold'
(6 variable-pitch 1.3)
(7 variable-pitch 1.2)
(t variable-pitch 1.1))
ef-themes-mixed-fonts t
ef-themes-variable-pitch-ui t))
;; Use `emacs-lsp-booster' with `Eglot' ;; Use `emacs-lsp-booster' with `Eglot'
(use-package eglot-booster (use-package eglot-booster
:after eglot :after eglot
@ -542,7 +571,7 @@
'(("Org" '(("Org"
("Agenda" (org-agenda nil "a") "a") ("Agenda" (org-agenda nil "a") "a")
("Time blocking" org-timeblock "b") ("Time blocking" org-timeblock "b")
("List all TODOs" (org-agenda nil "t") "t") ("Super agenda" (org-agenda nil "u") "u")
("Match Tags" (org-agenda nil "m") "m")))) ("Match Tags" (org-agenda nil "m") "m"))))
" " " "
,(enlight-menu ,(enlight-menu
@ -590,7 +619,7 @@
("FIXME" error bold) ("FIXME" error bold)
("NOTE" highlight italic) ("NOTE" highlight italic)
("REVIEW" highlight italic) ("REVIEW" highlight italic)
("TODO" bookmark-face bold))) ("TODO" highlight bold)))
:ensure (hl-todo :depth nil) :ensure (hl-todo :depth nil)
:hook (prog-mode . hl-todo-mode)) :hook (prog-mode . hl-todo-mode))

View file

@ -36,30 +36,46 @@
("C-c c" . org-capture) ("C-c c" . org-capture)
("C-c l" . org-store-link)) ("C-c l" . org-store-link))
:config :config
(setopt org-agenda-files (directory-files-recursively org-directory "org$") ;; General options TODO: Comment various options more descriptively
(setopt org-agenda-block-separator nil
org-agenda-files (directory-files-recursively org-directory "org$")
org-agenda-skip-deadline-if-done t org-agenda-skip-deadline-if-done t
org-agenda-skip-scheduled-if-deadline-is-shown t
org-agenda-skip-scheduled-if-done t org-agenda-skip-scheduled-if-done t
org-agenda-start-on-weekday nil org-agenda-start-on-weekday nil
org-archive-location (concat org-directory "/archive.org::* From %s") org-agenda-tags-column 0
org-archive-location (concat org-directory "/archive/archive.org::* From %s")
org-blank-before-new-entry '((heading . auto) org-blank-before-new-entry '((heading . auto)
(plain-list-item . auto)) (plain-list-item . auto))
org-enforce-todo-dependencies t org-enforce-todo-dependencies t
org-fold-catch-invisible-edits 'show-and-error
org-fontify-done-headline nil
org-fontify-quote-and-verse-blocks t org-fontify-quote-and-verse-blocks t
org-fontify-todo-headline t
org-goto-interface 'outline-path-completion
org-hide-emphasis-markers t org-hide-emphasis-markers t
org-insert-heading-respect-content t
org-log-done 'time org-log-done 'time
org-refile-targets '((nil :maxlevel . 2) org-outline-path-complete-in-steps nil
org-pretty-entities t
org-refile-allow-creating-parent-nodes 'confirm
org-refile-targets '((nil :maxlevel . 3)
(org-agenda-files :maxlevel . 2)) (org-agenda-files :maxlevel . 2))
org-refile-use-outline-path 'file org-refile-use-outline-path nil
org-return-follows-link t org-return-follows-link t
org-reverse-note-order t ; Add/refile notes at the beginning of an entry
org-src-preserve-indentation t org-src-preserve-indentation t
org-startup-folded 'content org-startup-folded 'fold
org-tags-column 0
org-todo-keywords '((sequence "BLOCKED(b@/!)" "IN-PROGRESS(i@/!)" org-todo-keywords '((sequence "BLOCKED(b@/!)" "IN-PROGRESS(i@/!)"
"TODO(t)" "WAITING(i@/!)" "|" "DONE(d!)" "TODO(t)" "WAITING(w@/!)" "|" "DONE(d!)"
"WONT-DO(w@/!)")) "WONT-DO(n@/!)"))
org-todo-keyword-faces '(("TODO" . (icon-button)) ;; org-todo-keyword-faces '(("TODO" . (icon-button))
("IN-PROGRESS" . (tool-bar)) ;; ("IN-PROGRESS" . (tool-bar))
("BLOCKED" . (match)) ;; ("BLOCKED" . (match))
("WONT-DO" . (org-done)))) ;; ("WONT-DO" . (org-done)))
org-todo-repeat-to-state "TODO")
(setq org-capture-templates (setq org-capture-templates
`( `(
("m" "Personal") ("m" "Personal")
@ -75,7 +91,7 @@
("mt" "Todo" ("mt" "Todo"
entry (file+headline ,(concat org-directory "/inbox.org") "You can do it!") entry (file+headline ,(concat org-directory "/inbox.org") "You can do it!")
"** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n " "** TODO [#B] %?\n:Created: %U\n "
:empty-lines 1) :empty-lines 1)
("p" "Projects") ("p" "Projects")
@ -86,7 +102,7 @@
("pt" "Todo" ("pt" "Todo"
entry (file+headline ,(concat org-directory "/inbox.org") "Project Tasks") entry (file+headline ,(concat org-directory "/inbox.org") "Project Tasks")
"** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n%i\n%a\nNotes: " "** TODO [#B] %?\n:Created: %U\n%i\n%a\nNotes: "
:empty-lines 1) :empty-lines 1)
("w" "Work") ("w" "Work")
@ -97,17 +113,115 @@
("wt" "Todo" ("wt" "Todo"
entry (file+headline ,(concat org-directory "/inbox.org") "Work Tasks") entry (file+headline ,(concat org-directory "/inbox.org") "Work Tasks")
"** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n%i\n%a\nNotes: " "** TODO [#B] %?\n:Created: %U\n%i\n%a\nNotes: "
:empty-lines 1))) :empty-lines 1)))
;; Headline appearance
(custom-set-faces
'(org-level-1 ((t (:inherit outline-1 :height 1.5))))
'(org-level-2 ((t (:inherit outline-2 :height 1.4))))
'(org-level-3 ((t (:inherit outline-3 :height 1.3))))
'(org-level-4 ((t (:inherit outline-4 :height 1.2))))
'(org-level-5 ((t (:inherit outline-5 :height 1.1)))))
:hook (org-mode . org-indent-mode) :hook (org-mode . org-indent-mode)
:init :init
(setopt org-directory "~/Nextcloud/Documents/org") (setopt org-directory "~/Nextcloud/Documents/org")
(bind-keys :prefix-map as/org-prefix-map (bind-keys :prefix-map as/org-prefix-map
:prefix "C-c o" :prefix "C-c o"
("n" . org-priority-down) ("n" . org-metadown)
("p" . org-priority-up) ("p" . org-metaup)
("f" . org-shiftmetaright) ("f" . org-shiftmetaright)
("b" . org-shiftmetaleft))) ("b" . org-shiftmetaleft)
("v" . org-tags-view)
("C-n" . org-priority-down)
("C-p" . org-priority-up)))
(use-package org-appear
:config
(setopt org-appear-autoentities t
org-appear-autolinks t
org-appear-autosubmarkers t
org-appear-trigger 'on-change)
:hook (org-mode . org-appear-mode))
(use-package org-modern
:disabled
:config
(setopt org-modern-symbol "Hack")
:hook
(org-mode . org-modern-mode)
(org-agenda-finalize . org-modern-agenda))
(use-package org-super-agenda
:hook (org-agenda-mode . org-super-agenda-mode)
:init
(setq org-agenda-custom-commands
'(("u" "Super agenda"
((agenda "" ((org-agenda-prefix-format " %?-12t %s")
;; (org-agenda-prefix-format " %-20:c%?-12t %s")
(org-agenda-remove-tags t)
(org-agenda-skip-function '(org-agenda-skip-entry-if
'todo '("WONT-DO")))
(org-agenda-span 5)))
(alltodo "" ((org-agenda-overriding-header "")
(org-agenda-prefix-format " %?-12t %s")
(org-agenda-remove-tags t)
(org-super-agenda-groups
'((:name "Important"
:priority "A"
:order 0)
(:name "In-Progress"
:todo "IN-PROGRESS"
:order 2)
(:name "Blocked"
:todo "BLOCKED"
:order 3)
(:name "Overdue"
:deadline past
:scheduled past
:order 1)
;; TODO: Figure out how to organize chores/personal
(:name "Chores"
:tag "chores"
:order 19)
(:name "Personal"
:habit t
:order 17)
(:name "Research"
:tag "research"
:order 7)
(:name "Upcoming"
:deadline future
:scheduled future
:order 18)
(:name "Project Backlog"
:and (:todo "TODO" :tag "project")
:order 5)
(:name "General Backlog"
:and (:todo "TODO" :priority "B")
:order 6)
(:name "Less Important"
:priority<= "C"
:order 20))))))))))
(use-package org-superstar
:config
(setopt org-indent-mode-turns-on-hiding-stars nil
org-superstar-leading-bullet ?\s
org-superstar-special-todo-items t)
:hook (org-mode . org-superstar-mode))
(use-package org-timeblock (use-package org-timeblock
:bind :bind
@ -116,6 +230,7 @@
:config :config
(setopt org-timeblock-new-task-time 'pick (setopt org-timeblock-new-task-time 'pick
org-timeblock-show-future-repeats 'next org-timeblock-show-future-repeats 'next
org-timeblock-scale-options (cons 7 20)
org-timeblock-span 3)) org-timeblock-span 3))
(provide 'init-org) (provide 'init-org)