mirror of
https://codeberg.org/andyscott/dotfiles.git
synced 2024-12-22 01:43:10 -05:00
Compare commits
3 commits
94e0ee773e
...
37261c156c
Author | SHA1 | Date | |
---|---|---|---|
37261c156c | |||
494df18481 | |||
7c6df5371d |
3 changed files with 125 additions and 39 deletions
|
@ -46,7 +46,7 @@
|
|||
(setq file-name-handler-alist nil)
|
||||
|
||||
;; Restore `garbage-collect' and `file-name-handler-alist' settings
|
||||
(add-hook 'emacs-startup-hook
|
||||
(add-hook 'elpaca-after-init-hook
|
||||
(lambda ()
|
||||
(setq file-name-handler-alist default-file-name-handler-alist
|
||||
gc-cons-percentage 0.1
|
||||
|
@ -113,7 +113,7 @@
|
|||
(push '(tool-bar-lines . 0) default-frame-alist)
|
||||
(push '(vertical-scroll-bars) default-frame-alist)
|
||||
(push '(background-color . "#282828") default-frame-alist)
|
||||
(push '(foreground-color . "#C6C6C6") default-frame-alist)
|
||||
(push '(foreground-color . "#c6c6c6") default-frame-alist)
|
||||
|
||||
;; Make lsp-mode use plists
|
||||
(setenv "LSP_USE_PLISTS" "true")
|
||||
|
|
|
@ -128,6 +128,9 @@
|
|||
|
||||
;; Customize compilation & related buffers
|
||||
(use-feature compile
|
||||
:bind
|
||||
(:map prog-mode-map
|
||||
("C-c r" . recompile))
|
||||
:commands (compile recompile)
|
||||
:config (setopt compilation-ask-about-save nil
|
||||
compilation-scroll-output 'first-error))
|
||||
|
@ -288,20 +291,20 @@
|
|||
:config
|
||||
(setopt recentf-max-menu-items 100
|
||||
recentf-max-saved-items 1000
|
||||
recentf-save-file (concat xdg_cache_home "recentf"))
|
||||
recentf-save-file (expand-file-name "recentf" xdg_cache_home))
|
||||
(recentf-mode))
|
||||
|
||||
;; Customize saving mini-buffer history
|
||||
(use-feature savehist
|
||||
:config
|
||||
(setopt savehist-autosave-interval 120
|
||||
savehist-file (concat xdg_cache_home "history"))
|
||||
savehist-file (expand-file-name "history" xdg_cache_home))
|
||||
(savehist-mode))
|
||||
|
||||
;; Customize saving place in files
|
||||
(use-feature saveplace
|
||||
:config
|
||||
(setopt save-place-file (concat xdg_cache_home "places"))
|
||||
(setopt save-place-file (expand-file-name "places" xdg_cache_home))
|
||||
(save-place-mode))
|
||||
|
||||
;; Unload `seq' before `Elpaca' starts building
|
||||
|
@ -378,6 +381,13 @@
|
|||
(catppuccin-reload)
|
||||
(load-theme 'catppuccin t))
|
||||
|
||||
;; C/C++ formatting
|
||||
;; Ad hoc format file: clang-format -style=webkit -dump-config > .clang-format
|
||||
(use-package clang-format
|
||||
:commands (clang-format clang-format-buffer clang-format-region)
|
||||
:config (setopt clang-format-fallback-style "webkit"
|
||||
clang-format-style "file"))
|
||||
|
||||
;; Search and navigation
|
||||
(use-package consult
|
||||
:bind (;; C-c bindings in `mode-specific-map'
|
||||
|
@ -431,7 +441,12 @@
|
|||
;; Minibuffer history
|
||||
:map minibuffer-local-map
|
||||
("M-s" . consult-history) ; orig. next-matching-history-element
|
||||
("M-r" . consult-history)) ; orig. previous-matching-history-element
|
||||
("M-r" . consult-history)
|
||||
:map as/org-prefix-map ; orig. previous-matching-history-element
|
||||
("h" . consult-org-heading)
|
||||
("a" . consult-org-agenda))
|
||||
:config
|
||||
(setopt consult-narrow-key "<")
|
||||
:init
|
||||
;; Register formatting
|
||||
(setopt register-preview-delay 0.6
|
||||
|
@ -442,6 +457,13 @@
|
|||
(setopt xref-show-xrefs-function #'consult-xref
|
||||
xref-show-definitions-function #'consult-xref))
|
||||
|
||||
(use-package consult-dir
|
||||
:after (consult)
|
||||
:bind (("C-x C-d" . consult-dir)
|
||||
:map vertico-map
|
||||
("C-x C-d" . consult-dir)
|
||||
("C-x C-j" . consult-dir-jump-file)))
|
||||
|
||||
;; UI for the workspace/symbols procedure calls
|
||||
(use-package consult-eglot
|
||||
:after (eglot)
|
||||
|
@ -486,7 +508,7 @@
|
|||
:ensure (eglot-booster :host github :repo "jdtsmith/eglot-booster"))
|
||||
|
||||
;; Command menu for items around point
|
||||
(use-package embark
|
||||
(use-package embark
|
||||
:bind
|
||||
(("C-." . embark-act)
|
||||
("C-;" . embark-dwim)
|
||||
|
@ -502,6 +524,46 @@
|
|||
(use-package embark-consult
|
||||
:hook (embark-collect-mode . consult-preview-at-point-mode))
|
||||
|
||||
;; Startup screen
|
||||
(use-package enlight
|
||||
:after (grid)
|
||||
:config
|
||||
(setopt
|
||||
enlight-content
|
||||
(grid-get-row
|
||||
`(,(enlight-menu
|
||||
'(("Files"
|
||||
("Find File" find-file "f")
|
||||
("Recent Files" consult-recent-file "r")
|
||||
("Projects" project-switch-project "p")
|
||||
("Open Project Buffer" consult-project-buffer "o"))))
|
||||
" "
|
||||
,(enlight-menu
|
||||
'(("Org"
|
||||
("Agenda" (org-agenda nil "a") "a")
|
||||
("Time blocking" org-timeblock "b")
|
||||
("List all TODOs" (org-agenda nil "t") "t")
|
||||
("Match Tags" (org-agenda nil "m") "m"))))
|
||||
" "
|
||||
,(enlight-menu
|
||||
`(("Settings"
|
||||
("Elpaca" elpaca-manager "L")
|
||||
("Emacs"
|
||||
(progn
|
||||
(find-file ,user-init-file))
|
||||
"I")
|
||||
("Enlight"
|
||||
(progn
|
||||
(find-file ,user-init-file)
|
||||
(goto-char (point-min))
|
||||
(search-forward "use-package enlight"))
|
||||
"E")
|
||||
("Org"
|
||||
(progn
|
||||
(find-file ,(replace-regexp-in-string "init.el" "lisp/init-org.el" user-init-file)))
|
||||
"O")))))))
|
||||
(enlight-open))
|
||||
|
||||
;; Correction functions for `flyspell'
|
||||
(use-package flyspell-correct
|
||||
:after (flyspell)
|
||||
|
@ -509,6 +571,10 @@
|
|||
(:map flyspell-mode-map
|
||||
("C-M-." . flyspell-correct-wrapper)))
|
||||
|
||||
;; Grid for `enlight'
|
||||
(use-package grid
|
||||
:ensure (:host github :repo "ichernyshovvv/grid.el"))
|
||||
|
||||
;; Highlight keywords
|
||||
(use-package hl-todo
|
||||
:bind
|
||||
|
@ -544,7 +610,7 @@
|
|||
:bind ("C-M-;" . magit-status)
|
||||
:config
|
||||
(setopt magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1
|
||||
transient-history-file (concat xdg_cache_home "transient-history")))
|
||||
transient-history-file (expand-file-name "transient-history" xdg_cache_home)))
|
||||
|
||||
(use-package magit-todos
|
||||
:hook (magit-mode . magit-todos-mode))
|
||||
|
@ -602,8 +668,8 @@
|
|||
(setopt completion-styles '(orderless basic)
|
||||
completion-category-overrides '((file (styles basic partial-completion)))
|
||||
orderless-matching-styles '(orderless-regexp
|
||||
orderless-literal
|
||||
orderless-initialism))
|
||||
orderless-literal
|
||||
orderless-initialism))
|
||||
:defer 1)
|
||||
|
||||
;; Project Management
|
||||
|
@ -611,7 +677,7 @@
|
|||
:disabled
|
||||
:bind ("C-c p" . projectile-command-map)
|
||||
:config
|
||||
(setopt projectile-known-projects-file (concat xdg_cache_home "projectile-bookmarks")
|
||||
(setopt projectile-known-projects-file (expand-file-name "projectile-bookmarks" xdg_cache_home)
|
||||
projectile-project-search-path '(("~/Nextcloud/Projects/src/" . 2)))
|
||||
(push "*node_modules" projectile-globally-ignored-directories)
|
||||
(projectile-mode))
|
||||
|
|
|
@ -36,67 +36,87 @@
|
|||
("C-c c" . org-capture)
|
||||
("C-c l" . org-store-link))
|
||||
:config
|
||||
(setopt org-agenda-files (list (concat org-directory "/personal")
|
||||
(concat org-directory "/projects")
|
||||
(concat org-directory "/work"))
|
||||
(setopt org-agenda-files (directory-files-recursively org-directory "org$")
|
||||
org-agenda-skip-deadline-if-done t
|
||||
org-agenda-skip-scheduled-if-done t
|
||||
org-agenda-start-on-weekday nil
|
||||
org-archive-location (concat org-directory "/archive.org::* From %s")
|
||||
org-blank-before-new-entry '((heading . auto)
|
||||
(plain-list-item . auto))
|
||||
org-enforce-todo-dependencies t
|
||||
org-fontify-quote-and-verse-blocks t
|
||||
org-hide-emphasis-markers t
|
||||
org-log-done 'time
|
||||
org-refile-targets '((nil :maxlevel . 2)
|
||||
(org-agenda-files :maxlevel . 2))
|
||||
org-refile-use-outline-path 'file
|
||||
org-return-follows-link t
|
||||
org-todo-keywords '((sequence "TODO(t)" "IN-PROGRESS(i@/!)" "|"
|
||||
"DONE(d!)" "BLOCKED(b@)" "WONT-DO(w@/!)" ))
|
||||
org-src-preserve-indentation t
|
||||
org-startup-folded 'content
|
||||
org-todo-keywords '((sequence "BLOCKED(b@/!)" "IN-PROGRESS(i@/!)"
|
||||
"TODO(t)" "WAITING(i@/!)" "|" "DONE(d!)"
|
||||
"WONT-DO(w@/!)"))
|
||||
org-todo-keyword-faces '(("TODO" . (icon-button))
|
||||
("IN-PROGRESS" . (tool-bar))
|
||||
("BLOCKED" . (match))
|
||||
("WONT-DO" . (org-done))))
|
||||
(setopt org-capture-templates
|
||||
(setq org-capture-templates
|
||||
`(
|
||||
("m" "Personal")
|
||||
("mj" "Log Entry"
|
||||
entry (file+datetree ,(concat org-directory "/personal/log.org"))
|
||||
"* %?"
|
||||
entry (file+datetree ,(concat org-directory "/personal_log.org"))
|
||||
"** %?"
|
||||
:empty-lines 1)
|
||||
|
||||
("mn" "Note"
|
||||
entry (file+headline ,(concat org-directory "/personal/notes.org") "Note to self...")
|
||||
"* %?"
|
||||
entry (file+headline ,(concat org-directory "/notes.org") "Note to self...")
|
||||
"** %?"
|
||||
:empty-lines 1)
|
||||
|
||||
("mt" "Todo"
|
||||
entry (file+headline ,(concat org-directory "/personal/todo.org") "Personal Tasks")
|
||||
"* TODO [#B] %?\n:Created: %T\n "
|
||||
entry (file+headline ,(concat org-directory "/inbox.org") "You can do it!")
|
||||
"** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n "
|
||||
:empty-lines 1)
|
||||
|
||||
("p" "Projects")
|
||||
("pn" "Note"
|
||||
entry (file+headline ,(concat org-directory "/projects/notes.org") "Project Notes")
|
||||
entry (file+headline ,(concat org-directory "/notes.org") "Project Notes")
|
||||
"** %?"
|
||||
:empty-lines 1)
|
||||
|
||||
("pt" "Todo"
|
||||
entry (file+headline ,(concat org-directory "/projects/todo.org") "Project Tasks")
|
||||
"* TODO [#B] %?\n:Created: %T\n%i\n%a\nNotes: "
|
||||
:empty-lines 0)
|
||||
entry (file+headline ,(concat org-directory "/inbox.org") "Project Tasks")
|
||||
"** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n%i\n%a\nNotes: "
|
||||
:empty-lines 1)
|
||||
|
||||
("w" "Work")
|
||||
("wn" "Note"
|
||||
entry (file+headline "~/Nextcloud/Documents/org/work/notes.org" "Work notes")
|
||||
entry (file+headline ,(concat org-directory "/notes.org") "Work Notes")
|
||||
"** %?"
|
||||
:empty-lines 0)
|
||||
:empty-lines 1)
|
||||
|
||||
("wt" "Todo"
|
||||
entry (file+headline "~/Nextcloud/Documents/org/work/todo.org" "Work tasks")
|
||||
"* TODO [#B] %?\n:Created: %T\n%i\n%a\nNotes: "
|
||||
:empty-lines 0)))
|
||||
entry (file+headline ,(concat org-directory "/inbox.org") "Work Tasks")
|
||||
"** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n%i\n%a\nNotes: "
|
||||
:empty-lines 1)))
|
||||
:hook (org-mode . org-indent-mode)
|
||||
:init
|
||||
(setopt org-directory "~/Nextcloud/Documents/org")
|
||||
;; (bind-keys :prefix-map as/org-prefix-map
|
||||
;; :prefix "C-c o"
|
||||
;; ("d" . org-priority-down)
|
||||
;; ("u" . org-priority-up)
|
||||
;; ("r" . org-shiftmetaright)
|
||||
;; ("l" . org-shiftmetaleft))
|
||||
)
|
||||
(bind-keys :prefix-map as/org-prefix-map
|
||||
:prefix "C-c o"
|
||||
("n" . org-priority-down)
|
||||
("p" . org-priority-up)
|
||||
("f" . org-shiftmetaright)
|
||||
("b" . org-shiftmetaleft)))
|
||||
|
||||
(use-package org-timeblock
|
||||
:bind
|
||||
(:map as/org-prefix-map
|
||||
("t" . org-timeblock))
|
||||
:config
|
||||
(setopt org-timeblock-new-task-time 'pick
|
||||
org-timeblock-show-future-repeats 'next
|
||||
org-timeblock-span 3))
|
||||
|
||||
(provide 'init-org)
|
||||
;;; org-mode.el ends here
|
||||
|
|
Loading…
Reference in a new issue