Big cleanup
This commit is contained in:
parent
81edbe00f0
commit
b2933f2b4a
6 changed files with 969 additions and 1856 deletions
File diff suppressed because it is too large
Load diff
|
@ -1,19 +1,18 @@
|
||||||
(setq user-full-name "Phil Bajsicki")
|
(setq user-full-name "Phil Bajsicki")
|
||||||
|
|
||||||
;; must be set before `org` is loaded
|
|
||||||
(setq org-directory "~/enc/org/")
|
|
||||||
(setq org-agenda-files (directory-files-recursively "~/enc/org/" ".org$"))1
|
|
||||||
|
|
||||||
(setq global-auto-revert-mode t)
|
|
||||||
(setq auth-sources '("~/.authinfo"))
|
|
||||||
(setq-default backup-inhibited t)
|
(setq-default backup-inhibited t)
|
||||||
|
(setq global-auto-revert-mode t)
|
||||||
|
(setq-default indent-tabs-mode t)
|
||||||
|
|
||||||
|
(setq find-file-visit-truename t)
|
||||||
|
|
||||||
|
(setq auth-sources '("~/.authinfo"))
|
||||||
|
|
||||||
(setq locale-coding-system 'utf-8)
|
(setq locale-coding-system 'utf-8)
|
||||||
(set-terminal-coding-system 'utf-8)
|
(set-terminal-coding-system 'utf-8)
|
||||||
(set-keyboard-coding-system 'utf-8)
|
(set-keyboard-coding-system 'utf-8)
|
||||||
(set-clipboard-coding-system 'utf-8)
|
(set-clipboard-coding-system 'utf-8)
|
||||||
(prefer-coding-system 'utf-8)
|
(prefer-coding-system 'utf-8)
|
||||||
(setq-default indent-tabs-mode t)
|
|
||||||
|
|
||||||
(setq langtool-java-bin "/usr/bin/java")
|
(setq langtool-java-bin "/usr/bin/java")
|
||||||
|
|
||||||
|
@ -24,6 +23,23 @@
|
||||||
(doom-themes-neotree-config)
|
(doom-themes-neotree-config)
|
||||||
(doom-themes-org-config)
|
(doom-themes-org-config)
|
||||||
|
|
||||||
|
(menu-bar-mode -1)
|
||||||
|
(tool-bar-mode -1)
|
||||||
|
(scroll-bar-mode -1)
|
||||||
|
|
||||||
|
(modify-all-frames-parameters
|
||||||
|
'((right-divider-width . 0)
|
||||||
|
(internal-border-width . 0)))
|
||||||
|
(dolist (face '(window-divider
|
||||||
|
window-divider-first-pixel
|
||||||
|
window-divider-last-pixel))
|
||||||
|
(face-spec-reset-face face)
|
||||||
|
(set-face-foreground face (face-attribute 'default :background)))
|
||||||
|
(set-face-background 'fringe (face-attribute 'default :background))
|
||||||
|
|
||||||
|
(set-frame-parameter nil 'alpha-background 85)
|
||||||
|
(add-to-list 'default-frame-alist '(alpha-background . 85))
|
||||||
|
|
||||||
(setq doom-themes-enable-bold t
|
(setq doom-themes-enable-bold t
|
||||||
doom-themes-enable-italic t
|
doom-themes-enable-italic t
|
||||||
doom-font (font-spec :family "Iosevka" :size 14)
|
doom-font (font-spec :family "Iosevka" :size 14)
|
||||||
|
@ -58,142 +74,141 @@
|
||||||
;; per mode with `ligature-mode'.
|
;; per mode with `ligature-mode'.
|
||||||
(global-ligature-mode t)
|
(global-ligature-mode t)
|
||||||
|
|
||||||
(set-frame-parameter nil 'alpha-background 85)
|
(setq display-line-numbers-type 'relative) ;; best honestly
|
||||||
(add-to-list 'default-frame-alist '(alpha-background . 85))
|
|
||||||
|
|
||||||
(setq display-line-numbers-type 'relative)
|
|
||||||
(setq next-screen-context-lines 4)
|
|
||||||
(setq-default global-visual-line-mode t)
|
(setq-default global-visual-line-mode t)
|
||||||
(setq x-stretch-cursor t)
|
|
||||||
(setq column-number-mode t)
|
(setq column-number-mode t)
|
||||||
|
(setq next-screen-context-lines 4)
|
||||||
(setq-default calendar-week-start-day 1)
|
(setq x-stretch-cursor t)
|
||||||
|
|
||||||
(global-set-key "\C-g" 'keyboard-quit)
|
(global-set-key "\C-g" 'keyboard-quit)
|
||||||
(global-set-key "\C-cu" 'browse-url-chrome)
|
(global-set-key "\C-cu" 'browse-url-chrome)
|
||||||
|
|
||||||
(setq straight-repository-branch "develop")
|
(setq straight-repository-branch "develop")
|
||||||
|
|
||||||
(use-package! pdf-tools
|
;; must be set before `org` is loaded
|
||||||
:defer t
|
|
||||||
:commands (pdf-loader-install)
|
|
||||||
:mode "\\.pdf\\'"
|
|
||||||
:bind (:map pdf-view-mode-map
|
|
||||||
("n" . pdf-view-next-line-or-next-page)
|
|
||||||
("p" . pdf-view-previous-line-or-previous-page)
|
|
||||||
("C-=" . pdf-view-enlarge)
|
|
||||||
("C--" . pdf-view-shrink))
|
|
||||||
:init (pdf-loader-install)
|
|
||||||
:config (add-to-list 'revert-without-query ".pdf"))
|
|
||||||
|
|
||||||
(add-hook 'pdf-view-mode-hook #'(lambda () (interactive (display-line-numbers-mode))))
|
|
||||||
|
|
||||||
(add-to-list 'auto-mode-alist
|
(add-to-list 'auto-mode-alist
|
||||||
'("\\.org\\'" . org-mode))
|
'("\\.org\\'" . org-mode))
|
||||||
|
|
||||||
(setq org-image-actual-width nil)
|
(setq-default calendar-week-start-day 1)
|
||||||
(setq org-enforce-todo-dependencies t)
|
|
||||||
(setq org-reverse-note-order nil)
|
|
||||||
(setq org-deadline-warning-days 7)
|
|
||||||
(setq org-blank-before-new-entry (quote ((heading . t)
|
|
||||||
(plain-list-item . nil))))
|
|
||||||
(setq org-num-mode t)
|
|
||||||
(setq org-todo-repeat-to-state "LOOP")
|
|
||||||
(setq org-remove-highlights-with-change nil)
|
|
||||||
(setq org-read-date-prefer-future t)
|
|
||||||
(setq org-special-ctrl-a/e t)
|
|
||||||
(setq org-special-ctrl-k t)
|
|
||||||
(setq org-yank-adjusted-subtrees t)
|
|
||||||
(setq org-M-RET-may-split-line (quote (default . t)))
|
|
||||||
(setq org-log-done (quote time))
|
|
||||||
(setq org-log-into-drawer t)
|
|
||||||
(setq org-catch-invisible-edits "smart")
|
|
||||||
(setq org-use-property-inheritance nil)
|
|
||||||
(setq org-duration-format 'h:mm)
|
|
||||||
(setq org-hierarchical-todo-statistics t)
|
|
||||||
|
|
||||||
(defun my-org-tree-to-indirect-buffer (&optional arg)
|
(setq org-contacts-files '("~/enc/org/people.org"))
|
||||||
"Create indirect buffer and narrow it to current subtree.
|
(setq org-directory "~/enc/org/")
|
||||||
The buffer is named after the subtree heading, with the filename
|
|
||||||
appended. If a buffer by that name already exists, it is
|
|
||||||
selected instead of creating a new buffer."
|
|
||||||
(interactive "P")
|
|
||||||
(let* ((new-buffer-p)
|
|
||||||
(pos (point))
|
|
||||||
(buffer-name (let* ((heading (org-get-heading t t))
|
|
||||||
(level (org-outline-level))
|
|
||||||
(face (intern (concat "outline-" (number-to-string level))))
|
|
||||||
(heading-string (propertize (org-link-display-format heading)
|
|
||||||
'face face)))
|
|
||||||
(concat heading-string "::" (buffer-name))))
|
|
||||||
(new-buffer (or (get-buffer buffer-name)
|
|
||||||
(prog1 (condition-case nil
|
|
||||||
(make-indirect-buffer (current-buffer) buffer-name 'clone)
|
|
||||||
(error (make-indirect-buffer (current-buffer) buffer-name)))
|
|
||||||
(setq new-buffer-p t)))))
|
|
||||||
(switch-to-buffer new-buffer)
|
|
||||||
(when new-buffer-p
|
|
||||||
;; I don't understand why setting the point again is necessary, but it is.
|
|
||||||
(goto-char pos)
|
|
||||||
(rename-buffer buffer-name)
|
|
||||||
(org-narrow-to-subtree))))
|
|
||||||
|
|
||||||
(advice-add 'org-tree-to-indirect-buffer :override 'my-org-tree-to-indirect-buffer)
|
(setq org-agenda-files (directory-files-recursively "~/enc/org/" ".org$"))1
|
||||||
|
|
||||||
(setq org-element--cache-self-verify nil)
|
(setq org-refile-targets '((nil :maxlevel . 9)
|
||||||
|
(org-agenda-files :maxlevel . 9)))
|
||||||
|
(setq org-outline-path-complete-in-steps nil)
|
||||||
|
(setq org-refile-use-outline-path 'file)
|
||||||
|
|
||||||
(setq org-image-actual-width '(600))
|
(setq org-image-actual-width '(0.8))
|
||||||
|
|
||||||
(package-initialize)
|
|
||||||
(menu-bar-mode -1)
|
|
||||||
(tool-bar-mode -1)
|
|
||||||
(scroll-bar-mode -1)
|
|
||||||
;; (modus-themes-load-operandi)
|
|
||||||
|
|
||||||
;; Choose some fonts
|
|
||||||
;; (set-face-attribute 'default nil :family "Iosevka")
|
|
||||||
;; (set-face-attribute 'variable-pitch nil :family "Iosevka Aile")
|
|
||||||
;; (set-face-attribute 'org-modern-symbol nil :family "Iosevka")
|
|
||||||
|
|
||||||
;; Add frame borders and window dividers
|
|
||||||
(modify-all-frames-parameters
|
|
||||||
'((right-divider-width . 0)
|
|
||||||
(internal-border-width . 0)))
|
|
||||||
(dolist (face '(window-divider
|
|
||||||
window-divider-first-pixel
|
|
||||||
window-divider-last-pixel))
|
|
||||||
(face-spec-reset-face face)
|
|
||||||
(set-face-foreground face (face-attribute 'default :background)))
|
|
||||||
(set-face-background 'fringe (face-attribute 'default :background))
|
|
||||||
|
|
||||||
(setq
|
|
||||||
;; Edit settings
|
|
||||||
org-auto-align-tags nil
|
|
||||||
org-tags-column 0
|
|
||||||
org-catch-invisible-edits 'show-and-error
|
|
||||||
org-special-ctrl-a/e t
|
|
||||||
org-insert-heading-respect-content t
|
|
||||||
|
|
||||||
;; Org styling, hide markup etc.
|
|
||||||
org-hide-emphasis-markers t
|
|
||||||
org-pretty-entities t
|
|
||||||
|
|
||||||
;; Agenda styling
|
|
||||||
org-agenda-tags-column 0
|
|
||||||
org-agenda-block-separator ?─
|
|
||||||
org-agenda-time-grid
|
|
||||||
'((daily today require-timed)
|
|
||||||
(800 1000 1200 1400 1600 1800 2000)
|
|
||||||
" ┄┄┄┄┄ " "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄")
|
|
||||||
org-agenda-current-time-string
|
|
||||||
"◀── now ─────────────────────────────────────────────────")
|
|
||||||
|
|
||||||
;; Ellipsis styling
|
|
||||||
;; (setq org-ellipsis "…")
|
|
||||||
;; (set-face-attribute 'org-ellipsis nil :inherit 'default :box nil)
|
|
||||||
|
|
||||||
(global-org-modern-mode)
|
(global-org-modern-mode)
|
||||||
|
|
||||||
|
(setq org-read-date-prefer-future t)
|
||||||
|
|
||||||
|
(setq org-reverse-note-order nil)
|
||||||
|
|
||||||
|
(setq org-blank-before-new-entry (quote ((heading . nil)
|
||||||
|
(plain-list-item . nil))))
|
||||||
|
|
||||||
|
(setq org-catch-invisible-edits "smart")
|
||||||
|
|
||||||
|
(setq org-special-ctrl-a/e t)
|
||||||
|
(setq org-special-ctrl-k t)
|
||||||
|
|
||||||
|
(setq org-yank-adjusted-subtrees t)
|
||||||
|
|
||||||
|
(setq org-M-RET-may-split-line '((headline . t)
|
||||||
|
(item . t)
|
||||||
|
(default . nil)))
|
||||||
|
|
||||||
|
(setq org-insert-heading-respect-content nil)
|
||||||
|
|
||||||
|
(setq org-footnote-section nil)
|
||||||
|
|
||||||
|
(setq org-log-done (quote time)
|
||||||
|
org-log-into-drawer t
|
||||||
|
org-clock-into-drawer t)
|
||||||
|
|
||||||
|
(setq org-treat-insert-todo-heading-as-state-change nil)
|
||||||
|
|
||||||
|
(setq org-use-property-inheritance nil)
|
||||||
|
;;(setq org-use-property-inheritance '(category columns archive logging))
|
||||||
|
|
||||||
|
(setq-default org-enforce-todo-dependencies t)
|
||||||
|
(setq org-enforce-todo-checkbox-dependencies t)
|
||||||
|
|
||||||
|
(setq org-deadline-warning-days 7)
|
||||||
|
|
||||||
|
(setq org-provide-todo-statistics t
|
||||||
|
org-hierarchical-todo-statistics t)
|
||||||
|
|
||||||
|
(setq org-todo-repeat-to-state "LOOP")
|
||||||
|
|
||||||
|
(setq org-todo-keywords
|
||||||
|
'((sequence
|
||||||
|
"INBOX(i!)"
|
||||||
|
"TASK(t!)" ; A task that needs doing & is ready to do
|
||||||
|
"PROJ(p!)" ; A project, which usually contains other tasks
|
||||||
|
"LOOP(r!)" ; A recurring task
|
||||||
|
"WAIT(w!)" ; Something external is holding up this task
|
||||||
|
"HOLD(h!)" ; This task is paused/on hold because of me
|
||||||
|
"|"
|
||||||
|
"DONE(d!@)" ; Task successfully completed
|
||||||
|
"KILL(k!@)") ; Task was cancelled, aborted or is no longer applicable
|
||||||
|
(sequence
|
||||||
|
"DECIDE()" ; for making decisions
|
||||||
|
"|"
|
||||||
|
"OKAY(o!)" ; okay as-is
|
||||||
|
"YES(y!)" ; take action
|
||||||
|
"NO(n!)")) ; don't take action
|
||||||
|
org-todo-keyword-faces
|
||||||
|
'(
|
||||||
|
("INBOX" :foreground "cyan" :weight bold)
|
||||||
|
("TASK" :foreground "purple" :weight bold)
|
||||||
|
("PROJ" :foreground "violet" :weight bold)
|
||||||
|
("LOOP" :foreground "magenta" :weight bold)
|
||||||
|
("WAIT" :foreground "yellow" :weight bold)
|
||||||
|
("HOLD" :foreground "orange" :weight bold)
|
||||||
|
("DONE" :foreground "green" :weight bold)
|
||||||
|
("KILL" :foreground "grey" :weight bold)))
|
||||||
|
|
||||||
|
(setq org-fontify-done-headline t)
|
||||||
|
(custom-set-faces
|
||||||
|
'(org-done ((t (:foreground "PaleGreen"
|
||||||
|
:weight normal
|
||||||
|
:strike-through t))))
|
||||||
|
'(org-headline-done
|
||||||
|
((((class color) (min-colors 16) (background dark))
|
||||||
|
(:foreground "LightSalmon" :strike-through t)))))
|
||||||
|
|
||||||
|
(global-set-key "\C-cl" 'org-store-link)
|
||||||
|
(global-set-key "\C-cnn" 'org-capture)
|
||||||
|
|
||||||
|
(global-set-key "\C-cia" '(lambda ()(interactive)
|
||||||
|
(org-time-stamp '(16))))
|
||||||
|
(global-set-key "\C-cii" '(lambda () (interactive)
|
||||||
|
(org-time-stamp-inactive '(16))))
|
||||||
|
|
||||||
|
(setq org-capture-templates '(("t" "inbox" entry (file+headline "~/enc/org/agenda.org" "Inbox") "* %i%?")
|
||||||
|
("i" "idea" entry (file+headline "~/enc/org/agenda.org" "Ideas") "* %?")
|
||||||
|
("d" "reminder" entry (file+headline "~/enc/org/agenda.org" "Reminders") "* %i%? \n %U")
|
||||||
|
("p" "person" entry (file+headline "~/enc/org/people.org" "Sort")
|
||||||
|
"* %(org-contacts-template-name)
|
||||||
|
:PROPERTIES:
|
||||||
|
:EMAIL: %(org-contacts-template-email)
|
||||||
|
:PHONE:
|
||||||
|
:ALIAS:
|
||||||
|
:NICKNAME:
|
||||||
|
:IGNORE:
|
||||||
|
:ICON:
|
||||||
|
:NOTE:
|
||||||
|
:ADDRESS:
|
||||||
|
:BIRTHDAY:
|
||||||
|
:END:")))
|
||||||
|
|
||||||
(defun my-dir-to-org (dir org-file)
|
(defun my-dir-to-org (dir org-file)
|
||||||
"Create a file ORG-FILE which has all txt files in DIR as linked headlines
|
"Create a file ORG-FILE which has all txt files in DIR as linked headlines
|
||||||
and the contents of the files below the headlines."
|
and the contents of the files below the headlines."
|
||||||
|
@ -236,109 +251,33 @@ and the contents of the files below the headlines."
|
||||||
(file-name-base dir) ".org")))
|
(file-name-base dir) ".org")))
|
||||||
dirs-full)))
|
dirs-full)))
|
||||||
|
|
||||||
(setq-default org-enforce-todo-dependencies t)
|
(defun my-org-tree-to-indirect-buffer (&optional arg)
|
||||||
(setq org-enforce-todo-checkbox-dependencies t)
|
"Create indirect buffer and narrow it to current subtree.
|
||||||
|
The buffer is named after the subtree heading, with the filename
|
||||||
|
appended. If a buffer by that name already exists, it is
|
||||||
|
selected instead of creating a new buffer."
|
||||||
|
(interactive "P")
|
||||||
|
(let* ((new-buffer-p)
|
||||||
|
(pos (point))
|
||||||
|
w (buffer-name (let* ((heading (org-get-heading t t))
|
||||||
|
(level (org-outline-level))
|
||||||
|
(face (intern (concat "outline-" (number-to-string level))))
|
||||||
|
(heading-string (propertize (org-link-display-format heading)
|
||||||
|
'face face)))
|
||||||
|
(concat heading-string "::" (buffer-name))))
|
||||||
|
(new-buffer (or (get-buffer buffer-name)
|
||||||
|
(prog1 (condition-case nil
|
||||||
|
(make-indirect-buffer (current-buffer) buffer-name 'clone)
|
||||||
|
(error (make-indirect-buffer (current-buffer) buffer-name)))
|
||||||
|
(setq new-buffer-p t)))))
|
||||||
|
(switch-to-buffer new-buffer)
|
||||||
|
(when new-buffer-p
|
||||||
|
;; I don't understand why setting the point again is necessary, but it is.
|
||||||
|
(goto-char pos)
|
||||||
|
(rename-buffer buffer-name)
|
||||||
|
(org-narrow-to-subtree))))
|
||||||
|
|
||||||
(require 'org-auto-tangle)
|
(advice-add 'org-tree-to-indirect-buffer :override 'my-org-tree-to-indirect-buffer)
|
||||||
(add-hook 'org-mode-hook 'org-auto-tangle-mode)
|
|
||||||
|
|
||||||
(add-hook 'write-file-hooks 'time-stamp)
|
|
||||||
(add-hook 'org-mode-hook
|
|
||||||
(lambda ()
|
|
||||||
;; yasnippet
|
|
||||||
;;disabled; (make-variable-buffer-local 'yas/trigger-key)
|
|
||||||
;;disabled; (org-set-local 'yas/trigger-key [tab])
|
|
||||||
;;disabled; (define-key yas/keymap [tab] 'yas/next-field-group)
|
|
||||||
;; flyspell mode for spell checking everywhere
|
|
||||||
;;disabled; (flyspell-mode 1)
|
|
||||||
;; auto-fill mode on
|
|
||||||
(auto-fill-mode 1)))
|
|
||||||
|
|
||||||
(add-to-list 'font-lock-extra-managed-props 'display)
|
|
||||||
|
|
||||||
(font-lock-add-keywords
|
|
||||||
'org-mode
|
|
||||||
'(("\\({{{[a-zA-Z#%)(_-+0-9]+}}}\\)" 0
|
|
||||||
`(face nil display
|
|
||||||
,(format "%s"
|
|
||||||
(let* ((input-str (match-string 0))
|
|
||||||
(el (with-temp-buffer
|
|
||||||
(insert input-str)
|
|
||||||
(goto-char (point-min))
|
|
||||||
(org-element-context)))
|
|
||||||
(text (org-macro-expand el org-macro-templates)))
|
|
||||||
(if text
|
|
||||||
text
|
|
||||||
input-str)))))))
|
|
||||||
|
|
||||||
(global-set-key "\C-cl" 'org-store-link)
|
|
||||||
(global-set-key "\C-ch" 'counsel-org-link)
|
|
||||||
(global-set-key "\C-cne" 'elgantt-open)
|
|
||||||
(global-set-key "\C-cnn" 'org-capture)
|
|
||||||
|
|
||||||
(global-set-key "\C-cia" '(lambda ()(interactive)
|
|
||||||
(org-time-stamp '(16))))
|
|
||||||
(global-set-key "\C-cii" '(lambda () (interactive)
|
|
||||||
(org-time-stamp-inactive '(16))))
|
|
||||||
|
|
||||||
(after! org-mode
|
|
||||||
(add-hook! 'org-insert-heading-hook
|
|
||||||
(if
|
|
||||||
(or
|
|
||||||
(string-match-p "journal.org" buffer-file-name)
|
|
||||||
(string-match-p "money" buffer-file-name)
|
|
||||||
(string-match-p "therapy.org" buffer-file-name))
|
|
||||||
((lambda ()
|
|
||||||
(interactive)
|
|
||||||
(org-time-stamp-inactive '(16))
|
|
||||||
(newline)))
|
|
||||||
(setq org-insert-heading-hook nil)
|
|
||||||
)))
|
|
||||||
|
|
||||||
(setq org-todo-keywords
|
|
||||||
'((sequence
|
|
||||||
"INBOX(i!)"
|
|
||||||
"TASK(t!)" ; A task that needs doing & is ready to do
|
|
||||||
"PROJ(p!)" ; A project, which usually contains other tasks
|
|
||||||
"LOOP(r!)" ; A recurring task
|
|
||||||
"WAIT(w!)" ; Something external is holding up this task
|
|
||||||
"HOLD(h!)" ; This task is paused/on hold because of me
|
|
||||||
"|"
|
|
||||||
"DONE(d!@)" ; Task successfully completed
|
|
||||||
"KILL(k!@)") ; Task was cancelled, aborted or is no longer applicable
|
|
||||||
(sequence
|
|
||||||
"DECIDE()" ; for making decisions
|
|
||||||
"|"
|
|
||||||
"OKAY(o!)" ; okay as-is
|
|
||||||
"YES(y!)" ; take action
|
|
||||||
"NO(n!)")) ; don't take action
|
|
||||||
org-todo-keyword-faces
|
|
||||||
'(
|
|
||||||
("INBOX" :foreground "cyan" :weight bold)
|
|
||||||
("TASK" :foreground "purple" :weight bold)
|
|
||||||
("PROJ" :foreground "violet" :weight bold)
|
|
||||||
("LOOP" :foreground "magenta" :weight bold)
|
|
||||||
("WAIT" :foreground "yellow" :weight bold)
|
|
||||||
("HOLD" :foreground "orange" :weight bold)
|
|
||||||
("DONE" :foreground "green" :weight bold)
|
|
||||||
("KILL" :foreground "grey" :weight bold)))
|
|
||||||
|
|
||||||
(setq org-capture-templates '(("t" "inbox" entry (file+headline "~/enc/org/agenda.org" "Inbox") "* %i%?")
|
|
||||||
("i" "idea" entry (file+headline "~/enc/org/agenda.org" "Ideas") "* %?")
|
|
||||||
("d" "reminder" entry (file+headline "~/enc/org/agenda.org" "Reminders") "* %i%? \n %U")
|
|
||||||
("p" "person" entry (file+headline "~/enc/org/people.org" "Sort")
|
|
||||||
"* %(org-contacts-template-name)
|
|
||||||
:PROPERTIES:
|
|
||||||
:EMAIL: %(org-contacts-template-email)
|
|
||||||
:PHONE:
|
|
||||||
:ALIAS:
|
|
||||||
:NICKNAME:
|
|
||||||
:IGNORE:
|
|
||||||
:ICON:
|
|
||||||
:NOTE:
|
|
||||||
:ADDRESS:
|
|
||||||
:BIRTHDAY:
|
|
||||||
:END:")))
|
|
||||||
|
|
||||||
(setq org-archive-default-command #'org-archive-subtree-hierarchically)
|
(setq org-archive-default-command #'org-archive-subtree-hierarchically)
|
||||||
|
|
||||||
|
@ -383,92 +322,106 @@ and the contents of the files below the headlines."
|
||||||
(org-end-of-subtree t t)
|
(org-end-of-subtree t t)
|
||||||
(org-paste-subtree level tree-text))))))))
|
(org-paste-subtree level tree-text))))))))
|
||||||
|
|
||||||
(setq my-linkcolor-org "wheat3")
|
(setq org-roam-v2-ack t)
|
||||||
(setq my-linkcolor-file "MediumSeaGreen")
|
(setq org-roam-completion-everywhere t)
|
||||||
(setq my-linkcolor-web "DeepSkyBlue")
|
(setq org-roam-directory
|
||||||
|
(file-truename "~/enc/org/roam"))
|
||||||
|
(org-roam-db-autosync-mode)
|
||||||
|
(org-roam-db-autosync-enable)
|
||||||
|
|
||||||
(defun my-set-linkcolors ()
|
(setq org-roam-capture-templates
|
||||||
"Defines the colors of various link colors"
|
'(("n" "default" plain
|
||||||
(interactive)
|
"%?"
|
||||||
|
:if-new (file+head "${slug}.org" "#+title: ${title}\n#+category: ${title}\n#+filetags: \n")
|
||||||
|
:empty-lines 1
|
||||||
|
:unnarrowed t)
|
||||||
|
("t" "Therapy" plain
|
||||||
|
"#+title: ${title}\n"
|
||||||
|
:if-new (file+head "therapy/therapy-${slug}.org" "#+title: ${title}\n#+category: 📗 ${title}\n#+filetags: 📗\n")
|
||||||
|
:empty-lines 1
|
||||||
|
:unnarrowed)))
|
||||||
|
|
||||||
;; Org links --------------------------------------------------------------------------
|
(define-prefix-command 'org-roam-map)
|
||||||
|
(global-set-key "\C-r" 'org-roam-map)
|
||||||
|
(define-key org-roam-map "o" 'org-roam-buffer-toggle)
|
||||||
|
(define-key org-roam-map "f" 'org-roam-node-find)
|
||||||
|
(define-key org-roam-map "i" 'org-roam-node-insert)
|
||||||
|
(define-key org-roam-map "n" 'org-roam-capture)
|
||||||
|
|
||||||
(org-link-set-parameters "id" :face `(:foreground ,my-linkcolor-org :underline t))
|
(setq org-agenda-start-day nil)
|
||||||
(org-link-set-parameters "contact" :face `(:foreground ,my-linkcolor-org :underline t))
|
(setq org-agenda-start-on-weekday nil)
|
||||||
|
(setq org-agenda-span 'day)
|
||||||
|
|
||||||
;; File links --------------------------------------------------------------------------
|
(setq org-agenda-dim-blocked-tasks t)
|
||||||
|
(setq org-agenda-compact-blocks t)
|
||||||
|
|
||||||
(org-link-set-parameters "file" :face `(:foreground ,my-linkcolor-file :underline t))
|
(setq org-agenda-skip-timestamp-if-deadline-is-shown t)
|
||||||
;; defined elsewhere;; (org-link-set-parameters "tsfile" :face '`(:foreground "DarkSeaGreen" :underline t))
|
|
||||||
(org-link-set-parameters "pdf" :face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
|
|
||||||
(org-link-set-parameters "EPA" :face `(:foreground ,my-linkcolor-file :underline t))
|
(setq org-agenda-skip-deadline-if-done t)
|
||||||
(org-link-set-parameters "EPAAFO" :face `(:foreground ,my-linkcolor-file :underline t))
|
(setq org-agenda-skip-scheduled-if-done t)
|
||||||
(org-link-set-parameters "JAFO" :face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
(org-link-set-parameters "DAKEPA" :face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
(org-link-set-parameters "BMTSK" :face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
(org-link-set-parameters "ISO" :face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
|
|
||||||
(org-link-set-parameters "gemSpec_DS_Anbieter"
|
(setq org-agenda-text-search-extra-files (quote (agenda-archives)))
|
||||||
:face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
(org-link-set-parameters "gemSpec_Net"
|
|
||||||
:face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
(org-link-set-parameters "gemSpec_PKI"
|
|
||||||
:face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
(org-link-set-parameters "gemSpec_IDP_Dienst"
|
|
||||||
:face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
|
|
||||||
(org-link-set-parameters "messageid"
|
(setq org-agenda-search-headline-for-time nil)
|
||||||
:face `(:foreground ,my-linkcolor-file :underline t))
|
|
||||||
|
|
||||||
;; Web links --------------------------------------------------------------------------
|
(setq org-agenda-show-all-dates t)
|
||||||
|
|
||||||
(org-link-set-parameters "http" :face `(:foreground ,my-linkcolor-web :underline t))
|
(setq org-agenda-log-mode-items '(closed clock state))
|
||||||
(org-link-set-parameters "https" :face `(:foreground ,my-linkcolor-web :underline t))
|
|
||||||
|
|
||||||
)
|
(setq org-agenda-sorting-strategy
|
||||||
|
(quote ((agenda time-up user-defined-up priority-down category-keep)
|
||||||
|
(todo priority-down category-keep)
|
||||||
|
(tags priority-down category-keep)
|
||||||
|
(search category-keep))))
|
||||||
|
|
||||||
(defun my-set-linkcolors ()
|
(setq org-agenda-use-tag-inheritance (quote (agenda)))
|
||||||
"Defines the colors of various link colors"
|
|
||||||
(interactive)
|
|
||||||
|
|
||||||
;; Org links --------------------------------------------------------------------------
|
(setq org-agenda-prefix-format '((agenda . " %l %i %c %s %t")
|
||||||
|
(todo . " %i %-12:c")
|
||||||
|
(tags . " %i $-12:c")
|
||||||
|
(search . " %i %-12:c")))
|
||||||
|
|
||||||
(org-link-set-parameters "id" :face '(:foreground "wheat3" :underline t))
|
(setq org-agenda-tags-column -80
|
||||||
(org-link-set-parameters "contact" :face '(:foreground "wheat3" :underline t))
|
org-agenda-block-separator ?─
|
||||||
|
org-agenda-current-time-string "◀── now ─────────────────────────────────────────────────")
|
||||||
|
|
||||||
;; File links --------------------------------------------------------------------------
|
(setq org-agenda-time-grid
|
||||||
|
'((daily today remove-match)
|
||||||
|
(800 1000 1200 1400 1600 1800 2000)
|
||||||
|
" ┄┄┄┄┄ "
|
||||||
|
"┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄"))
|
||||||
|
|
||||||
(org-link-set-parameters "file" :face '(:foreground "MediumSeaGreen" :underline t))
|
(add-hook 'org-agenda-mode-hook '(lambda () (hl-line-mode 1)))
|
||||||
;; defined elsewhere;; (org-link-set-parameters "tsfile" :face ''(:foreground "DarkSeaGreen" :underline t))
|
|
||||||
(org-link-set-parameters "pdf" :face '(:foreground "MediumSeaGreen" :underline t))
|
|
||||||
|
|
||||||
(org-link-set-parameters "EPA" :face '(:foreground "MediumSeaGreen" :underline t))
|
(add-to-list 'org-modules 'habit)
|
||||||
(org-link-set-parameters "EPAAFO" :face '(:foreground "MediumSeaGreen" :underline t))
|
(setq org-habit-following-days 2
|
||||||
(org-link-set-parameters "JAFO" :face '(:foreground "MediumSeaGreen" :underline t))
|
org-habit-preceding-days 7
|
||||||
(org-link-set-parameters "DAKEPA" :face '(:foreground "MediumSeaGreen" :underline t))
|
org-habit-show-all-today nil
|
||||||
(org-link-set-parameters "BMTSK" :face '(:foreground "MediumSeaGreen" :underline t))
|
org-habit-show-habits-only-for-today t
|
||||||
|
org-habit-show-habits t)
|
||||||
|
|
||||||
(org-link-set-parameters "gemSpec_DS_Anbieter"
|
(define-key org-mode-map (kbd "C-c h") 'org-habit-stats-view-habit-at-point)
|
||||||
:face '(:foreground "MediumSeaGreen" :underline t))
|
(add-hook 'org-after-todo-state-change-hook 'org-habit-stats-update-properties)
|
||||||
(org-link-set-parameters "gemSpec_Net"
|
|
||||||
:face '(:foreground "MediumSeaGreen" :underline t))
|
|
||||||
(org-link-set-parameters "gemSpec_PKI"
|
|
||||||
:face '(:foreground "MediumSeaGreen" :underline t))
|
|
||||||
(org-link-set-parameters "gemSpec_IDP_Dienst"
|
|
||||||
:face '(:foreground "MediumSeaGreen" :underline t))
|
|
||||||
|
|
||||||
(org-link-set-parameters "messageid"
|
(global-set-key (kbd "C-S-c C-S-c") 'mc/edit-lines)
|
||||||
:face '(:foreground "MediumSeaGreen" :underline t))
|
(global-set-key (kbd "C->") 'mc/mark-next-like-this)
|
||||||
|
(global-set-key (kbd "C-<") 'mc/mark-previous-like-this)
|
||||||
|
(global-set-key (kbd "C-c C-<") 'mc/mark-all-like-this)
|
||||||
|
|
||||||
;; Web links --------------------------------------------------------------------------
|
(require 'org-auto-tangle)
|
||||||
|
(add-hook 'org-mode-hook 'org-auto-tangle-mode)
|
||||||
|
|
||||||
(org-link-set-parameters "http" :face '(:foreground "DeepSkyBlue" :underline t))
|
(after! org
|
||||||
(org-link-set-parameters "https" :face '(:foreground "DeepSkyBlue" :underline t))
|
(add-hook! 'org-insert-heading-hook
|
||||||
|
(if (or
|
||||||
|
(string-match-p "journal.org" buffer-file-name)
|
||||||
|
(string-match-p "money.org" buffer-file-name)
|
||||||
|
(string-match-p "therapy.org" buffer-file-name))
|
||||||
|
(progn
|
||||||
|
(org-time-stamp-inactive '(16))
|
||||||
|
(newline)))))
|
||||||
|
|
||||||
)
|
(add-hook 'org-babel-after-execute-hook 'org-display-inline-images)
|
||||||
|
|
||||||
(my-set-linkcolors) ;; set colors when loading
|
|
||||||
|
|
||||||
(require 'org-crypt)
|
(require 'org-crypt)
|
||||||
(require 'epa-file)
|
(require 'epa-file)
|
||||||
|
@ -478,41 +431,7 @@ and the contents of the files below the headlines."
|
||||||
(setq org-crypt-key "phil@bajsicki.com")
|
(setq org-crypt-key "phil@bajsicki.com")
|
||||||
(setenv "GPG_AGENT_INFO" nil)
|
(setenv "GPG_AGENT_INFO" nil)
|
||||||
|
|
||||||
|
(use-package! org-expiry)
|
||||||
|
|
||||||
(add-to-list 'load-path "/usr/share/emacs/site-lisp/mu4e/")
|
|
||||||
|
|
||||||
(setq mu4e-change-filenames-when-moving t)
|
|
||||||
(setq mu4e-update-interval (* 10 60))
|
|
||||||
(setq mu4e-get-mail-command "mbsync -a")
|
|
||||||
(setq mu4e-maildir "~/enc/.mail")
|
|
||||||
|
|
||||||
(setq mu4e-drafts-folder "/Drafts")
|
|
||||||
(setq mu4e-sent-folder "/Sent")
|
|
||||||
(setq mu4e-refile-folder "/Refile")
|
|
||||||
(setq mu4e-trash-folder "/Trash")
|
|
||||||
|
|
||||||
(mu4e t)
|
|
||||||
|
|
||||||
;; (load (expand-file-name "~/.roswell/helper.el"))
|
|
||||||
|
|
||||||
(setq inferior-lisp-program "sbcl --dynamic-space-size 8192 -Q -l ~/.sbclrc")
|
|
||||||
|
|
||||||
(global-set-key (kbd "C-S-c C-S-c") 'mc/edit-lines)
|
|
||||||
(global-set-key (kbd "C->") 'mc/mark-next-like-this)
|
|
||||||
(global-set-key (kbd "C-<") 'mc/mark-previous-like-this)
|
|
||||||
(global-set-key (kbd "C-c C-<") 'mc/mark-all-like-this)
|
|
||||||
|
|
||||||
(use-package! org-transclusion
|
|
||||||
:after org
|
|
||||||
:init
|
|
||||||
(map!
|
|
||||||
:map global-map "<f12>" #'org-transclusion-add
|
|
||||||
:leader
|
|
||||||
:prefix "n"
|
|
||||||
:desc "Org Transclusion Mode" "t" #'org-transclusion-mode))
|
|
||||||
|
|
||||||
(add-hook 'org-babel-after-execute-hook 'org-display-inline-images)
|
|
||||||
|
|
||||||
(with-eval-after-load 'ox-latex
|
(with-eval-after-load 'ox-latex
|
||||||
(add-to-list 'org-latex-classes
|
(add-to-list 'org-latex-classes
|
||||||
|
@ -534,23 +453,14 @@ and the contents of the files below the headlines."
|
||||||
("\\subsection{%s}" . "\\subsection*{%s}")
|
("\\subsection{%s}" . "\\subsection*{%s}")
|
||||||
("\\subsubsection{%s}" . "\\subsubsection*{%s}"))))
|
("\\subsubsection{%s}" . "\\subsubsection*{%s}"))))
|
||||||
|
|
||||||
(defun org-super-links-quick-related ()
|
(use-package! org-transclusion
|
||||||
(interactive)
|
:after org
|
||||||
(let ((org-super-links-link-prefix "\nrelated: "))
|
:init
|
||||||
(org-super-links-link)))
|
(map!
|
||||||
|
:map global-map "<f12>" #'org-transclusion-add
|
||||||
(setq org-super-links-related-into-drawer t)
|
:leader
|
||||||
(setq org-super-links-related-drawer-default-name "RELATED"
|
:prefix "n"
|
||||||
org-super-links-link-prefix 'org-super-links-link-prefix-timestamp)
|
:desc "Org Transclusion Mode" "t" #'org-transclusion-mode))
|
||||||
|
|
||||||
(setq org-export-with-broken-links t) ;; avoiding error on export
|
|
||||||
|
|
||||||
(global-unset-key (kbd "C-c l"))
|
|
||||||
(global-set-key (kbd "C-c l l") 'org-super-links-link)
|
|
||||||
(global-set-key (kbd "C-c l s") 'org-super-links-store-link)
|
|
||||||
(global-set-key (kbd "C-c l i") 'org-super-links-insert-drawer-link)
|
|
||||||
(global-set-key (kbd "C-c l r") 'org-super-links-quick-related)
|
|
||||||
(global-set-key (kbd "C-c l d") 'org-super-links-delete-link)
|
|
||||||
|
|
||||||
(org-wild-notifier-mode)
|
(org-wild-notifier-mode)
|
||||||
(setq alert-default-style 'libnotify
|
(setq alert-default-style 'libnotify
|
||||||
|
@ -558,157 +468,45 @@ and the contents of the files below the headlines."
|
||||||
org-wild-notifier-keyword-whitelist nil
|
org-wild-notifier-keyword-whitelist nil
|
||||||
;; good for testing
|
;; good for testing
|
||||||
org-wild-notifier--alert-severity 'high
|
org-wild-notifier--alert-severity 'high
|
||||||
alert-fade-time 50
|
alert-fade-time 50)
|
||||||
)
|
|
||||||
|
|
||||||
(setq org-refile-targets '((nil :maxlevel . 9)
|
(add-to-list 'load-path "/usr/share/emacs/site-lisp/mu4e/")
|
||||||
(org-agenda-files :maxlevel . 9)))
|
|
||||||
(setq org-outline-path-complete-in-steps nil)
|
|
||||||
(setq org-refile-use-outline-path t)
|
|
||||||
|
|
||||||
(setq org-contacts-files '("~/enc/org/people.org"))
|
(setq mu4e-change-filenames-when-moving t)
|
||||||
|
(setq mu4e-update-interval (* 10 60))
|
||||||
|
(setq mu4e-get-mail-command "mbsync -a")
|
||||||
|
(setq mu4e-maildir "~/enc/.mail")
|
||||||
|
|
||||||
(setq org-roam-v2-ack t)
|
(setq mu4e-drafts-folder "/Drafts")
|
||||||
(setq org-roam-completion-everywhere t)
|
(setq mu4e-sent-folder "/Sent")
|
||||||
(setq org-roam-directory
|
(setq mu4e-refile-folder "/Refile")
|
||||||
(file-truename "~/enc/org/roam"))
|
(setq mu4e-trash-folder "/Trash")
|
||||||
(org-roam-db-autosync-mode)
|
|
||||||
(org-roam-db-autosync-enable)
|
|
||||||
|
|
||||||
(setq org-roam-capture-templates
|
(mu4e t)
|
||||||
'(("n" "default" plain
|
|
||||||
"%?"
|
|
||||||
:if-new (file+head "${slug}.org" "#+title: ${title}\n#+category: ${title}\n#+filetags: \n")
|
|
||||||
:empty-lines 1
|
|
||||||
:unnarrowed t)
|
|
||||||
("j" "journal" plain
|
|
||||||
"%?"
|
|
||||||
:if-new (file+head "journal/journal-${slug}.org" "#+title: ${title}\n#+category: 📔${title}\n#+filetags: 📔\n")
|
|
||||||
:empty-lines 1
|
|
||||||
:unnarrowed t)
|
|
||||||
("t" "Therapy" plain
|
|
||||||
"#+title: ${title}\n"
|
|
||||||
:if-new (file+head "therapy/therapy-${slug}.org" "#+title: ${title}\n#+category: 📗 ${title}\n#+filetags: 📗\n")
|
|
||||||
:empty-lines 1
|
|
||||||
:unnarrowed)))
|
|
||||||
|
|
||||||
(define-prefix-command 'org-roam-map)
|
(use-package! pdf-tools
|
||||||
(global-set-key "\C-r" 'org-roam-map)
|
:defer t
|
||||||
(define-key org-roam-map "o" 'org-roam-buffer-toggle)
|
:commands (pdf-loader-install)
|
||||||
(define-key org-roam-map "f" 'org-roam-node-find)
|
:mode "\\.pdf\\'"
|
||||||
(define-key org-roam-map "i" 'org-roam-node-insert)
|
:bind (:map pdf-view-mode-map
|
||||||
(define-key org-roam-map "n" 'org-roam-capture)
|
("n" . pdf-view-next-line-or-next-page)
|
||||||
|
("p" . pdf-view-previous-line-or-previous-page)
|
||||||
|
("C-=" . pdf-view-enlarge)
|
||||||
|
("C--" . pdf-view-shrink))
|
||||||
|
:init (pdf-loader-install)
|
||||||
|
:config (add-to-list 'revert-without-query ".pdf"))
|
||||||
|
|
||||||
(global-set-key "\C-ca" 'org-agenda)
|
(add-hook 'pdf-view-mode-hook #'(lambda () (interactive (display-line-numbers-mode))))
|
||||||
(define-prefix-command 'org-agenda-map)
|
|
||||||
(global-set-key "\C-a" 'org-agenda-map)
|
|
||||||
(define-key org-agenda-map "n" 'org-agenda-capture)
|
|
||||||
(define-key org-agenda-map "a" 'org-agenda)
|
|
||||||
|
|
||||||
(setq org-agenda-start-day nil
|
|
||||||
org-agenda-span 'day
|
|
||||||
org-agenda-dim-blocked-tasks t
|
|
||||||
org-agenda-sorting-strategy
|
|
||||||
'(time-up priority-up category-keep)
|
|
||||||
org-deadline-warning-days 4
|
|
||||||
org-log-into-drawer t
|
|
||||||
org-treat-insert-todo-heading-as-state-change t
|
|
||||||
org-clock-into-drawer t
|
|
||||||
org-agenda-log-mode-items '(closed clock state)
|
|
||||||
org-agenda-prefix-format '((agenda . " %l %i %c %s %t")
|
|
||||||
(todo . " %i %-12:c")
|
|
||||||
(tags . " %i $-12:c")
|
|
||||||
(search . " %i %-12:c"))
|
|
||||||
org-agenda-compact-blocks nil
|
|
||||||
org-agenda-use-tag-inheritance (quote (agenda));; agenda performance
|
|
||||||
org-agenda-block-separator "---------")
|
|
||||||
|
|
||||||
(add-hook 'org-agenda-mode-hook '(lambda () (hl-line-mode 1)))
|
|
||||||
|
|
||||||
(setq org-agenda-skip-deadline-if-done t)
|
|
||||||
|
|
||||||
(setq org-agenda-skip-scheduled-if-done t)
|
|
||||||
|
|
||||||
(setq org-agenda-text-search-extra-files (quote (agenda-archives)))
|
|
||||||
|
|
||||||
(setq org-agenda-log-mode-items (quote (state)))
|
|
||||||
|
|
||||||
(setq org-agenda-search-headline-for-time nil)
|
|
||||||
|
|
||||||
(setq org-agenda-include-diary t)
|
|
||||||
|
|
||||||
(setq org-agenda-repeating-timestamp-show-all t)
|
|
||||||
|
|
||||||
(setq org-agenda-show-all-dates t)
|
|
||||||
|
|
||||||
(setq org-agenda-sorting-strategy
|
|
||||||
(quote ((agenda time-up user-defined-up priority-down category-keep)
|
|
||||||
(todo priority-down category-keep)
|
|
||||||
(tags priority-down category-keep)
|
|
||||||
(search category-keep))))
|
|
||||||
|
|
||||||
(setq org-agenda-start-on-weekday nil)
|
|
||||||
|
|
||||||
(setq org-agenda-skip-timestamp-if-deadline-is-shown t)
|
|
||||||
|
|
||||||
(define-key org-agenda-mode-map (kbd "C-p") 'my-scroll-down-half)
|
|
||||||
(define-key org-agenda-mode-map (kbd "C-n") 'my-scroll-up-half)
|
|
||||||
|
|
||||||
(setq org-agenda-format-date (lambda (date) (concat "\n"
|
|
||||||
(make-string (window-width) 9472)
|
|
||||||
"\n"
|
|
||||||
(org-agenda-format-date-aligned date))))
|
|
||||||
|
|
||||||
(setq org-export-with-broken-links t)
|
|
||||||
|
|
||||||
(defun my-org-copy-region-as-markdown ()
|
|
||||||
"Copy the region (in Org) to the system clipboard as Markdown."
|
|
||||||
(interactive)
|
|
||||||
(if (use-region-p)
|
|
||||||
(let* ((region
|
|
||||||
(buffer-substring-no-properties
|
|
||||||
(region-beginning)
|
|
||||||
(region-end)))
|
|
||||||
(markdown
|
|
||||||
(org-export-string-as region 'md t '(:with-toc nil))))
|
|
||||||
(gui-set-selection 'CLIPBOARD markdown))))
|
|
||||||
|
|
||||||
(add-to-list 'org-modules 'habit)
|
|
||||||
(setq org-habit-following-days 2
|
|
||||||
org-habit-preceding-days 7
|
|
||||||
org-habit-show-all-today nil
|
|
||||||
org-habit-show-habits-only-for-today t
|
|
||||||
org-habit-show-habits t)
|
|
||||||
|
|
||||||
(define-key org-mode-map (kbd "C-c h") 'org-habit-stats-view-habit-at-point)
|
|
||||||
(define-key org-agenda-mode-map (kbd "H") 'org-habit-stats-view-habit-at-point-agenda)
|
|
||||||
(add-hook 'org-after-todo-state-change-hook 'org-habit-stats-update-properties)
|
|
||||||
|
|
||||||
(setq doom-snippets-enable-short-helpers t)
|
(setq doom-snippets-enable-short-helpers t)
|
||||||
|
|
||||||
(setq dired-open-extensions '(("gif" . "sxiv")
|
|
||||||
("jpg" . "sxiv")
|
|
||||||
("png" . "sxiv")
|
|
||||||
("mkv" . "mpv")
|
|
||||||
("mp4" . "mpv")))
|
|
||||||
|
|
||||||
(mode-icons-mode)
|
|
||||||
(add-hook 'dired-mode-hook #'mode-icons--mode-disable) ;; with mode-icons, visiting a dir with dired takes up *lots* of CPU for =mode-icons-reset= (performance-issue)
|
|
||||||
|
|
||||||
(add-to-list 'auto-mode-alist '("\\.[Cc][Ss][Vv]\\'" . csv-mode))
|
(add-to-list 'auto-mode-alist '("\\.[Cc][Ss][Vv]\\'" . csv-mode))
|
||||||
(autoload 'csv-mode "csv-mode"
|
(autoload 'csv-mode "csv-mode"
|
||||||
"Major mode for editing comma-separated value files." t)
|
"Major mode for editing comma-separated value files." t)
|
||||||
|
|
||||||
;; To open files with .journal extension in hledger-mode
|
;; (load (expand-file-name "~/.roswell/helper.el"))
|
||||||
(add-to-list 'auto-mode-alist '("\\.journal\\'" . hledger-mode))
|
|
||||||
|
|
||||||
;; Provide the path to you journal file.
|
(setq inferior-lisp-program "sbcl --dynamic-space-size 8192 -Q -l ~/.sbclrc")
|
||||||
;; The default location is too opinionated.
|
|
||||||
(setq hledger-jfile "~/enc/org/hledger/2023.journal")
|
|
||||||
|
|
||||||
;;; Auto-completion for account names
|
|
||||||
;; For company-mode users,
|
|
||||||
(add-to-list 'company-backends 'hledger-company)
|
|
||||||
|
|
||||||
(use-package! gptel
|
(use-package! gptel
|
||||||
:config
|
:config
|
||||||
|
@ -730,15 +528,4 @@ and the contents of the files below the headlines."
|
||||||
|
|
||||||
(setq gptel--debug t)
|
(setq gptel--debug t)
|
||||||
|
|
||||||
;; Set our nickname & real-name as constant variables
|
|
||||||
(setq
|
|
||||||
erc-nick "phil_bb" ; Our IRC nick
|
|
||||||
erc-user-full-name "Phil B.") ; Our /whois name
|
|
||||||
|
|
||||||
;; Define a function to connect to a server
|
|
||||||
(defun erc/libera ()
|
|
||||||
(interactive)
|
|
||||||
(erc :server "irc.libera.chat"
|
|
||||||
:port "6667"))
|
|
||||||
|
|
||||||
(setq-default elfeed-search-filter "@1-week-ago +unread ")
|
(setq-default elfeed-search-filter "@1-week-ago +unread ")
|
||||||
|
|
|
@ -81,13 +81,12 @@
|
||||||
|
|
||||||
:checkers
|
:checkers
|
||||||
syntax ; tasing you for every semicolon you forget
|
syntax ; tasing you for every semicolon you forget
|
||||||
;;(spell +flyspell) ; tasing you for misspelling mispelling
|
(spell +flyspell) ; tasing you for misspelling mispelling
|
||||||
grammar ; tasing grammar mistake every you make
|
;;grammar ; tasing grammar mistake every you make
|
||||||
|
|
||||||
:tools
|
:tools
|
||||||
ansible
|
ansible
|
||||||
;;biblio ; Writes a PhD for you (citation needed)
|
;;biblio ; Writes a PhD for you (citation needed)
|
||||||
;;collab ; buffers with friends
|
|
||||||
debugger ; FIXME stepping through code" to help you add bugs
|
debugger ; FIXME stepping through code" to help you add bugs
|
||||||
;;direnv
|
;;direnv
|
||||||
docker
|
docker
|
||||||
|
@ -104,9 +103,8 @@
|
||||||
;;prodigy ; FIXME managing external services & code builders
|
;;prodigy ; FIXME managing external services & code builders
|
||||||
rgb ; creating color strings
|
rgb ; creating color strings
|
||||||
;;taskrunner ; taskrunner for all your projects
|
;;taskrunner ; taskrunner for all your projects
|
||||||
;;terraform ; infrastructure as code
|
terraform ; infrastructure as code
|
||||||
;;tmux ; an API for interacting with tmux
|
;;tmux ; an API for interacting with tmux
|
||||||
;;tree-sitter ; syntax and parsing" sitting in a tree...
|
|
||||||
;;upload ; map local to remote projects via ssh/ftp
|
;;upload ; map local to remote projects via ssh/ftp
|
||||||
|
|
||||||
:os
|
:os
|
||||||
|
@ -117,13 +115,13 @@
|
||||||
;;agda ; types of types of types of types...
|
;;agda ; types of types of types of types...
|
||||||
;;beancount ; mind the GAAP
|
;;beancount ; mind the GAAP
|
||||||
(cc +lsp) ; C > C++ == 1
|
(cc +lsp) ; C > C++ == 1
|
||||||
(clojure +lsp) ; java with a lisp
|
;;(clojure +lsp) ; java with a lisp
|
||||||
common-lisp ; if you've seen one lisp" you've seen them all
|
common-lisp ; if you've seen one lisp" you've seen them all
|
||||||
;;coq ; proofs-as-programs
|
;;coq ; proofs-as-programs
|
||||||
;;crystal ; ruby at the speed of c
|
;;crystal ; ruby at the speed of c
|
||||||
;;csharp ; unity" .NET" and mono shenanigans
|
;;csharp ; unity" .NET" and mono shenanigans
|
||||||
data ; config/data formats
|
data ; config/data formats
|
||||||
(dart +flutter) ; paint ui and not much else
|
;;(dart +flutter) ; paint ui and not much else
|
||||||
;;dhall
|
;;dhall
|
||||||
;;elixir ; erlang done right
|
;;elixir ; erlang done right
|
||||||
;;elm ; care for a cup of TEA?
|
;;elm ; care for a cup of TEA?
|
||||||
|
@ -135,33 +133,33 @@
|
||||||
;;fortran ; in FORTRAN" GOD is REAL (unless declared INTEGER)
|
;;fortran ; in FORTRAN" GOD is REAL (unless declared INTEGER)
|
||||||
;;fsharp ; ML stands for Microsoft's Language
|
;;fsharp ; ML stands for Microsoft's Language
|
||||||
;;fstar ; (dependent) types and (monadic) effects and Z3
|
;;fstar ; (dependent) types and (monadic) effects and Z3
|
||||||
gdscript ; the language you waited for
|
;;gdscript ; the language you waited for
|
||||||
;;(go +lsp) ; the hipster dialect
|
(go +lsp) ; the hipster dialect
|
||||||
;;(graphql +lsp) ; Give queries a REST
|
;;(graphql +lsp) ; Give queries a REST
|
||||||
(haskell +lsp) ; a language that's lazier than I am
|
(haskell +lsp) ; a language that's lazier than I am
|
||||||
;;hy ; readability of scheme w/ speed of python
|
;;hy ; readability of scheme w/ speed of python
|
||||||
;;idris ; a language you can depend on
|
;;idris ; a language you can depend on
|
||||||
json ; At least it ain't XML
|
json ; At least it ain't XML
|
||||||
(java +lsp) ; the poster child for carpal tunnel syndrome
|
;;(java +lsp) ; the poster child for carpal tunnel syndrome
|
||||||
(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
|
(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
|
||||||
(julia +lsp) ; a better" faster MATLAB
|
;;(julia +lsp) ; a better" faster MATLAB
|
||||||
;;kotlin ; a better" slicker Java(Script)
|
;;kotlin ; a better" slicker Java(Script)
|
||||||
latex ; writing papers in Emacs has never been so fun
|
latex ; writing papers in Emacs has never been so fun
|
||||||
;;lean ; for folks with too much to prove
|
;;lean ; for folks with too much to prove
|
||||||
;;ledger ; be audit you can be
|
;;ledger ; be audit you can be
|
||||||
lua ; one-based indices? one-based indices
|
;;lua ; one-based indices? one-based indices
|
||||||
markdown ; writing docs for people to ignore
|
markdown ; writing docs for people to ignore
|
||||||
;;nim ; python + lisp at the speed of c
|
;;nim ; python + lisp at the speed of c
|
||||||
nix ; I hereby declare "nix geht mehr!"
|
;;nix ; I hereby declare "nix geht mehr!"
|
||||||
;;ocaml ; an objective camel
|
;;ocaml ; an objective camel
|
||||||
(org +dragndrop +pandoc +pretty +gnuplot +roam2) ; organize your plain life in plain text
|
(org +dragndrop +pandoc +pretty +gnuplot +roam2) ; organize your plain life in plain text
|
||||||
php ; perl's insecure younger brother
|
;;php ; perl's insecure younger brother
|
||||||
plantuml ; diagrams for confusing people more
|
plantuml ; diagrams for confusing people more
|
||||||
;;purescript ; javascript" but functional
|
;;purescript ; javascript" but functional
|
||||||
(python +lsp) ; beautiful is better than ugly
|
(python +lsp) ; beautiful is better than ugly
|
||||||
;;qt ; the 'cutest' gui framework ever
|
;;qt ; the 'cutest' gui framework ever
|
||||||
;;racket ; a DSL for DSLs
|
;;racket ; a DSL for DSLs
|
||||||
raku ; the artist formerly known as perl6
|
;;raku ; the artist formerly known as perl6
|
||||||
;;rest ; Emacs as a REST client
|
;;rest ; Emacs as a REST client
|
||||||
;;rst ; ReST in peace
|
;;rst ; ReST in peace
|
||||||
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
|
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
|
||||||
|
@ -175,7 +173,7 @@
|
||||||
;;terra ; Earth and Moon in alignment for performance.
|
;;terra ; Earth and Moon in alignment for performance.
|
||||||
(web +lsp) ; the tubes
|
(web +lsp) ; the tubes
|
||||||
yaml ; JSON" but readable
|
yaml ; JSON" but readable
|
||||||
(zig +lsp) ; C" but simpler
|
;;(zig +lsp) ; C" but simpler
|
||||||
|
|
||||||
:email
|
:email
|
||||||
(mu4e +org +gmail)
|
(mu4e +org +gmail)
|
||||||
|
@ -186,7 +184,7 @@
|
||||||
calendar
|
calendar
|
||||||
;;emms
|
;;emms
|
||||||
everywhere ; *leave* Emacs!? You must be joking
|
everywhere ; *leave* Emacs!? You must be joking
|
||||||
;;irc ; how neckbeards socialize
|
irc ; how neckbeards socialize
|
||||||
(rss +org) ; emacs as an RSS reader
|
(rss +org) ; emacs as an RSS reader
|
||||||
;;twitter ; twitter client https://twitter.com/vnought
|
;;twitter ; twitter client https://twitter.com/vnought
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
|
|
||||||
(package! all-the-icons)
|
(package! all-the-icons)
|
||||||
(package! all-the-icons-dired)
|
(package! all-the-icons-dired)
|
||||||
|
|
||||||
(package! doom-themes)
|
(package! doom-themes)
|
||||||
|
|
||||||
(package! battle-haxe)
|
(package! battle-haxe)
|
||||||
|
@ -21,8 +20,6 @@
|
||||||
|
|
||||||
(package! dired-open)
|
(package! dired-open)
|
||||||
|
|
||||||
;; (package! helm-xref)
|
|
||||||
|
|
||||||
(package! pdf-tools)
|
(package! pdf-tools)
|
||||||
|
|
||||||
;; Fix for org-roam link issue
|
;; Fix for org-roam link issue
|
||||||
|
@ -51,31 +48,14 @@
|
||||||
(package! org-wild-notifier)
|
(package! org-wild-notifier)
|
||||||
(package! org-habit-stats)
|
(package! org-habit-stats)
|
||||||
|
|
||||||
|
(package! org-contrib
|
||||||
|
:recipe (:host sourcehut :type git
|
||||||
(package! org-edna)
|
:repo "~bzg/org-contrib"
|
||||||
(package! org-super-links
|
:files ("lisp/*.el")))
|
||||||
:recipe (
|
|
||||||
:type git
|
|
||||||
:host github
|
|
||||||
:repo "toshism/org-super-links"
|
|
||||||
:branch "develop"
|
|
||||||
))
|
|
||||||
|
|
||||||
(package! elgantt
|
|
||||||
:recipe (:host github :repo "legalnonsense/elgantt"))
|
|
||||||
|
|
||||||
(package! mode-icons)
|
|
||||||
|
|
||||||
(package! qrencode)
|
|
||||||
|
|
||||||
(package! hledger-mode)
|
|
||||||
|
|
||||||
(package! elpher)
|
|
||||||
|
|
||||||
(package! multiple-cursors)
|
|
||||||
|
|
||||||
(package! gptel
|
(package! gptel
|
||||||
:recipe (:host github
|
:recipe (:host github
|
||||||
:repo "karthink/gptel"
|
:repo "karthink/gptel"
|
||||||
:files ("*.el")))
|
:files ("*.el")))
|
||||||
|
|
||||||
|
(package! elpher)
|
||||||
|
|
|
@ -563,7 +563,7 @@ Notes: I use a ZSA Moonlander so a lot of the 4-5 key sequences are actually jus
|
||||||
#+end_src
|
#+end_src
|
||||||
*** Some common keybinds:
|
*** Some common keybinds:
|
||||||
#+begin_src haskell
|
#+begin_src haskell
|
||||||
, ("M-e", spawn "emacsclient --altername-editor='emacs'")
|
, ("M-e", spawn "emacsclient -c")
|
||||||
, ("M-<Return>", spawn "alacritty")
|
, ("M-<Return>", spawn "alacritty")
|
||||||
, ("M-S-<F11>", spawn "feh --recursive --randomize --bg-fill /mnt/ext1/media/Images/Wallpapers/*")
|
, ("M-S-<F11>", spawn "feh --recursive --randomize --bg-fill /mnt/ext1/media/Images/Wallpapers/*")
|
||||||
, ("M-<Print>", spawn "dm-maim")
|
, ("M-<Print>", spawn "dm-maim")
|
||||||
|
|
|
@ -333,7 +333,7 @@ main = do
|
||||||
, ("M-S-C-M1-q", killAll)
|
, ("M-S-C-M1-q", killAll)
|
||||||
, ("M-d", spawn "rofi -show drun")
|
, ("M-d", spawn "rofi -show drun")
|
||||||
|
|
||||||
, ("M-e", spawn "emacsclient --altername-editor='emacs'")
|
, ("M-e", spawn "emacsclient -c")
|
||||||
, ("M-<Return>", spawn "alacritty")
|
, ("M-<Return>", spawn "alacritty")
|
||||||
, ("M-S-<F11>", spawn "feh --recursive --randomize --bg-fill /mnt/ext1/media/Images/Wallpapers/*")
|
, ("M-S-<F11>", spawn "feh --recursive --randomize --bg-fill /mnt/ext1/media/Images/Wallpapers/*")
|
||||||
, ("M-<Print>", spawn "dm-maim")
|
, ("M-<Print>", spawn "dm-maim")
|
||||||
|
|
Loading…
Reference in a new issue