now you see'
This commit is contained in:
parent
c819dd6177
commit
a3988b6006
3 changed files with 104 additions and 212 deletions
|
@ -65,8 +65,8 @@ kept-old-versions 5)
|
||||||
(require `package)
|
(require `package)
|
||||||
|
|
||||||
(setq package-archives `(("mepla" . "https://melpa.org/packages/")
|
(setq package-archives `(("mepla" . "https://melpa.org/packages/")
|
||||||
("org" . "https://orgmode.org/elpa/")
|
("org" . "https://orgmode.org/elpa/")
|
||||||
("elpa" . "https://elpa.gnu.org/packages/")))
|
("elpa" . "https://elpa.gnu.org/packages/")))
|
||||||
|
|
||||||
(package-initialize)
|
(package-initialize)
|
||||||
(unless package-archive-contents
|
(unless package-archive-contents
|
||||||
|
@ -79,20 +79,6 @@ kept-old-versions 5)
|
||||||
(require 'use-package)
|
(require 'use-package)
|
||||||
(setq use-package-always-ensure t)
|
(setq use-package-always-ensure t)
|
||||||
|
|
||||||
(message "setting up straight.el")
|
|
||||||
(defvar bootstrap-version)
|
|
||||||
(let ((bootstrap-file
|
|
||||||
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
|
|
||||||
(bootstrap-version 6))
|
|
||||||
(unless (file-exists-p bootstrap-file)
|
|
||||||
(with-current-buffer
|
|
||||||
(url-retrieve-synchronously
|
|
||||||
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
|
|
||||||
'silent 'inhibit-cookies)
|
|
||||||
(goto-char (point-max))
|
|
||||||
(eval-print-last-sexp)))
|
|
||||||
(load bootstrap-file nil 'nomessage))
|
|
||||||
|
|
||||||
(use-package gcmh
|
(use-package gcmh
|
||||||
:init
|
:init
|
||||||
(setq gcmh-idle-delay 5)
|
(setq gcmh-idle-delay 5)
|
||||||
|
@ -113,8 +99,8 @@ kept-old-versions 5)
|
||||||
(add-hook 'emacs-startup-hook
|
(add-hook 'emacs-startup-hook
|
||||||
(lambda ()
|
(lambda ()
|
||||||
;;(setq gc-cons-threshold 16777216 ; 16mb
|
;;(setq gc-cons-threshold 16777216 ; 16mb
|
||||||
;; this could be really bad idk
|
;; this could be really bad idk
|
||||||
(setq gc-cons-threshold 100000000
|
(setq gc-cons-threshold 100000000
|
||||||
gc-cons-percentage 0.1)))
|
gc-cons-percentage 0.1)))
|
||||||
|
|
||||||
(defun doom-defer-garbage-collection-h ()
|
(defun doom-defer-garbage-collection-h ()
|
||||||
|
@ -143,18 +129,18 @@ kept-old-versions 5)
|
||||||
(force-mode-line-update)
|
(force-mode-line-update)
|
||||||
|
|
||||||
(setq-default mode-line-format
|
(setq-default mode-line-format
|
||||||
'((:eval (sakoline-render
|
'((:eval (sakoline-render
|
||||||
;; left
|
;; left
|
||||||
(quote ("%e"
|
(quote ("%e"
|
||||||
sakoline-evil-mode
|
sakoline-evil-mode
|
||||||
" "
|
" "
|
||||||
sakoline-buffer-name
|
sakoline-buffer-name
|
||||||
" "
|
" "
|
||||||
sakoline-buffer-state))
|
sakoline-buffer-state))
|
||||||
;; right
|
;; right
|
||||||
(quote (sakoline-major-mode
|
(quote (sakoline-major-mode
|
||||||
)
|
)
|
||||||
)))))
|
)))))
|
||||||
|
|
||||||
(defun sakoline-render (left right)
|
(defun sakoline-render (left right)
|
||||||
"Return a string of `window-width' length.
|
"Return a string of `window-width' length.
|
||||||
|
@ -215,7 +201,7 @@ kept-old-versions 5)
|
||||||
((eq evil-state 'insert) (propertize " INSERT " 'face 'sakoline-evil-insert-color ))
|
((eq evil-state 'insert) (propertize " INSERT " 'face 'sakoline-evil-insert-color ))
|
||||||
((eq evil-state 'emacs) (propertize " EMACS " 'face 'sakoline-evil-emacs-color ))
|
((eq evil-state 'emacs) (propertize " EMACS " 'face 'sakoline-evil-emacs-color ))
|
||||||
((eq evil-state 'operator) (propertize " OPERATOR " 'face 'sakoline-evil-operator-color))
|
((eq evil-state 'operator) (propertize " OPERATOR " 'face 'sakoline-evil-operator-color))
|
||||||
"Get current evil mode state")))
|
"Get current evil mode state")))
|
||||||
|
|
||||||
(put 'sakoline-evil-mode 'risky-local-variable t)
|
(put 'sakoline-evil-mode 'risky-local-variable t)
|
||||||
|
|
||||||
|
@ -230,33 +216,29 @@ kept-old-versions 5)
|
||||||
'(:eval
|
'(:eval
|
||||||
(cond
|
(cond
|
||||||
(buffer-read-only
|
(buffer-read-only
|
||||||
(propertize ">:("
|
(propertize ">:("
|
||||||
'face 'sakoline-buffer-state-readonly
|
'face 'sakoline-buffer-state-readonly
|
||||||
'help-echo "buffer is read only"))
|
'help-echo "buffer is read only"))
|
||||||
((buffer-modified-p)
|
((buffer-modified-p)
|
||||||
(propertize "!!!"
|
(propertize "!!!"
|
||||||
'face 'sakoline-buffer-state-modified)))))
|
'face 'sakoline-buffer-state-modified)))))
|
||||||
|
|
||||||
(put 'sakoline-buffer-state 'risky-local-variable t)
|
(put 'sakoline-buffer-state 'risky-local-variable t)
|
||||||
|
|
||||||
(message "setting up packages")
|
(message "setting up packages")
|
||||||
|
|
||||||
(use-package command-log-mode
|
(use-package command-log-mode
|
||||||
;;:straight t
|
|
||||||
)
|
)
|
||||||
|
|
||||||
;; better search
|
;; better search
|
||||||
(use-package swiper
|
(use-package swiper
|
||||||
;;:straight t
|
|
||||||
)
|
)
|
||||||
;; better commands
|
;; better commands
|
||||||
(use-package counsel
|
(use-package counsel
|
||||||
:straight t
|
|
||||||
)
|
)
|
||||||
;; autocompletion on commands (?)
|
;; autocompletion on commands (?)
|
||||||
(use-package ivy
|
(use-package ivy
|
||||||
:diminish
|
:diminish
|
||||||
:straight t
|
|
||||||
:bind (("C-s" . swiper)
|
:bind (("C-s" . swiper)
|
||||||
:map ivy-minibuffer-map
|
:map ivy-minibuffer-map
|
||||||
("TAB" . ivy-alt-done)
|
("TAB" . ivy-alt-done)
|
||||||
|
@ -275,13 +257,11 @@ kept-old-versions 5)
|
||||||
(ivy-mode 1))
|
(ivy-mode 1))
|
||||||
;; better ivy autocompletion
|
;; better ivy autocompletion
|
||||||
(use-package ivy-rich
|
(use-package ivy-rich
|
||||||
:straight t
|
|
||||||
:init
|
:init
|
||||||
(ivy-rich-mode 1))
|
(ivy-rich-mode 1))
|
||||||
|
|
||||||
;; ivy in the middle
|
;; ivy in the middle
|
||||||
(use-package ivy-posframe
|
(use-package ivy-posframe
|
||||||
:straight t
|
|
||||||
:init
|
:init
|
||||||
(setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center)))
|
(setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center)))
|
||||||
:config
|
:config
|
||||||
|
@ -289,7 +269,6 @@ kept-old-versions 5)
|
||||||
|
|
||||||
;; counsel M+X
|
;; counsel M+X
|
||||||
(use-package counsel
|
(use-package counsel
|
||||||
:straight t
|
|
||||||
:bind (("M-x" . counsel-M-x)
|
:bind (("M-x" . counsel-M-x)
|
||||||
("C-x b" . counsel-ibuffer)
|
("C-x b" . counsel-ibuffer)
|
||||||
("C-x C-f" . counsel-find-file)
|
("C-x C-f" . counsel-find-file)
|
||||||
|
@ -299,7 +278,6 @@ kept-old-versions 5)
|
||||||
(setq ivy-inital-inputs-alist nil))
|
(setq ivy-inital-inputs-alist nil))
|
||||||
|
|
||||||
;; (use-package doom-themes
|
;; (use-package doom-themes
|
||||||
;; :straight t
|
|
||||||
;; :ensure t
|
;; :ensure t
|
||||||
;; :config
|
;; :config
|
||||||
;; ;; Global settings (defaults)
|
;; ;; Global settings (defaults)
|
||||||
|
@ -316,14 +294,12 @@ kept-old-versions 5)
|
||||||
;; (doom-themes-visual-bell-config))
|
;; (doom-themes-visual-bell-config))
|
||||||
|
|
||||||
(use-package timu-macos-theme
|
(use-package timu-macos-theme
|
||||||
:straight t
|
|
||||||
:config
|
:config
|
||||||
(load-theme 'timu-macos t))
|
(load-theme 'timu-macos t))
|
||||||
|
|
||||||
(use-package all-the-icons)
|
(use-package all-the-icons)
|
||||||
|
|
||||||
(use-package nerd-icons
|
(use-package nerd-icons
|
||||||
:straight t
|
|
||||||
:custom
|
:custom
|
||||||
;; "Symbols Nerd Font Mono" is the default and is recommended
|
;; "Symbols Nerd Font Mono" is the default and is recommended
|
||||||
;; but you can use any other Nerd Font if you want
|
;; but you can use any other Nerd Font if you want
|
||||||
|
@ -331,11 +307,9 @@ kept-old-versions 5)
|
||||||
)
|
)
|
||||||
|
|
||||||
(use-package rainbow-delimiters
|
(use-package rainbow-delimiters
|
||||||
:straight t
|
|
||||||
:hook (prog-mode . rainbow-delimiters-mode))
|
:hook (prog-mode . rainbow-delimiters-mode))
|
||||||
|
|
||||||
(use-package which-key
|
(use-package which-key
|
||||||
:straight t
|
|
||||||
:init (which-key-mode)
|
:init (which-key-mode)
|
||||||
:diminish which-key-mode
|
:diminish which-key-mode
|
||||||
:config
|
:config
|
||||||
|
@ -343,28 +317,23 @@ kept-old-versions 5)
|
||||||
|
|
||||||
;; (use-package doom-modeline
|
;; (use-package doom-modeline
|
||||||
;; :ensure t
|
;; :ensure t
|
||||||
;; :straight t
|
|
||||||
;; :hook (after-init . doom-modeline-mode)
|
;; :hook (after-init . doom-modeline-mode)
|
||||||
;; :custom ((doom-modeline-height 40)))
|
;; :custom ((doom-modeline-height 40)))
|
||||||
|
|
||||||
(use-package hide-mode-line
|
(use-package hide-mode-line
|
||||||
:straight t
|
|
||||||
:hook (((treemacs-mode
|
:hook (((treemacs-mode
|
||||||
eshell-mode shell-mode
|
eshell-mode shell-mode
|
||||||
term-mode vterm-mode
|
term-mode vterm-mode
|
||||||
embark-collect-mode
|
embark-collect-mode
|
||||||
lsp-ui-imenu-mode
|
lsp-ui-imenu-mode
|
||||||
pdf-annot-list-mode
|
pdf-annot-list-mode
|
||||||
dashboard-mode) . turn-on-hide-mode-line-mode)
|
dashboard-mode) . turn-on-hide-mode-line-mode)
|
||||||
(dired-mode . turn-off-hide-mode-line-mode)))
|
(dired-mode . turn-off-hide-mode-line-mode)))
|
||||||
|
|
||||||
(use-package minions
|
(use-package minions
|
||||||
:straight t
|
|
||||||
:hook (doom-modeline-mode . minions-mode))
|
:hook (doom-modeline-mode . minions-mode))
|
||||||
|
|
||||||
(use-package helpful
|
(use-package helpful
|
||||||
:ensure t
|
|
||||||
:straight t
|
|
||||||
:custom
|
:custom
|
||||||
(counsel-describe-function-function #'helpful-callable)
|
(counsel-describe-function-function #'helpful-callable)
|
||||||
(counsel-describe-variable-function #'helpful-variable)
|
(counsel-describe-variable-function #'helpful-variable)
|
||||||
|
@ -375,12 +344,9 @@ kept-old-versions 5)
|
||||||
([remap describe-key] . helpful-key))
|
([remap describe-key] . helpful-key))
|
||||||
|
|
||||||
(use-package delsel
|
(use-package delsel
|
||||||
:straight t
|
|
||||||
:ensure nil
|
|
||||||
:config (delete-selection-mode +1))
|
:config (delete-selection-mode +1))
|
||||||
|
|
||||||
(use-package general
|
(use-package general
|
||||||
:straight t
|
|
||||||
:config
|
:config
|
||||||
(general-create-definer sakomacs/leader-keys
|
(general-create-definer sakomacs/leader-keys
|
||||||
:keymaps `(normal insert visual emacs)
|
:keymaps `(normal insert visual emacs)
|
||||||
|
@ -436,7 +402,6 @@ kept-old-versions 5)
|
||||||
"gcp" `(forge-create-pullreq :which-key "pull request")))
|
"gcp" `(forge-create-pullreq :which-key "pull request")))
|
||||||
|
|
||||||
(use-package dashboard
|
(use-package dashboard
|
||||||
:straight t
|
|
||||||
:init
|
:init
|
||||||
(setq dashboard-display-icons-p t) ;; display icons on both GUI and terminal
|
(setq dashboard-display-icons-p t) ;; display icons on both GUI and terminal
|
||||||
(setq dashboard-icon-type 'nerd-icons) ;; use `nerd-icons' package
|
(setq dashboard-icon-type 'nerd-icons) ;; use `nerd-icons' package
|
||||||
|
@ -468,13 +433,11 @@ kept-old-versions 5)
|
||||||
(dashboard-setup-startup-hook))
|
(dashboard-setup-startup-hook))
|
||||||
|
|
||||||
(use-package evil
|
(use-package evil
|
||||||
:straight t
|
|
||||||
:init
|
:init
|
||||||
(setq evil-want-integration t)
|
(setq evil-want-integration t)
|
||||||
(setq evil-want-keybinding nil)
|
(setq evil-want-keybinding nil)
|
||||||
(setq evil-want-C-u-scroll t)
|
(setq evil-want-C-u-scroll t)
|
||||||
(setq evil-want-C-i-jump nil)
|
(setq evil-want-C-i-jump nil)
|
||||||
:ensure t
|
|
||||||
:demand
|
:demand
|
||||||
:config
|
:config
|
||||||
(evil-mode 1)
|
(evil-mode 1)
|
||||||
|
@ -490,20 +453,17 @@ kept-old-versions 5)
|
||||||
|
|
||||||
;; extra things for Evil
|
;; extra things for Evil
|
||||||
(use-package evil-collection
|
(use-package evil-collection
|
||||||
:straight t
|
|
||||||
:after evil
|
:after evil
|
||||||
:config
|
:config
|
||||||
(evil-collection-init))
|
(evil-collection-init))
|
||||||
|
|
||||||
;; commenting
|
;; commenting
|
||||||
(use-package evil-commentary
|
(use-package evil-commentary
|
||||||
:straight t
|
|
||||||
:after evil
|
:after evil
|
||||||
:diminish
|
:diminish
|
||||||
:config (evil-commentary-mode +1))
|
:config (evil-commentary-mode +1))
|
||||||
|
|
||||||
(use-package hydra
|
(use-package hydra
|
||||||
:straight t
|
|
||||||
)
|
)
|
||||||
(defhydra hydra-text-scale (:timeout 4)
|
(defhydra hydra-text-scale (:timeout 4)
|
||||||
"scale text"
|
"scale text"
|
||||||
|
@ -515,7 +475,6 @@ kept-old-versions 5)
|
||||||
"ts" '(hydra-text-scale/body :which-key "scale text"))
|
"ts" '(hydra-text-scale/body :which-key "scale text"))
|
||||||
|
|
||||||
(use-package projectile
|
(use-package projectile
|
||||||
:straight t
|
|
||||||
:diminish projectile-mode
|
:diminish projectile-mode
|
||||||
:demand
|
:demand
|
||||||
:config (projectile-mode)
|
:config (projectile-mode)
|
||||||
|
@ -528,11 +487,9 @@ kept-old-versions 5)
|
||||||
(setq projectile-switch-project-action #'projectile-dired))
|
(setq projectile-switch-project-action #'projectile-dired))
|
||||||
|
|
||||||
(use-package counsel-projectile
|
(use-package counsel-projectile
|
||||||
:straight t
|
|
||||||
:config (counsel-projectile-mode))
|
:config (counsel-projectile-mode))
|
||||||
|
|
||||||
(use-package org
|
(use-package org
|
||||||
:straight t
|
|
||||||
:hook (org-mode . org-indent-mode)
|
:hook (org-mode . org-indent-mode)
|
||||||
:config
|
:config
|
||||||
(setq org-ellipsis " ↓")
|
(setq org-ellipsis " ↓")
|
||||||
|
@ -547,7 +504,7 @@ kept-old-versions 5)
|
||||||
|
|
||||||
;; archive thingy i forgot
|
;; archive thingy i forgot
|
||||||
(setq org-refile-targets
|
(setq org-refile-targets
|
||||||
'(("archive.org" :maxlevel . 1)))
|
'(("archive.org" :maxlevel . 1)))
|
||||||
|
|
||||||
;; save org buffer before refile
|
;; save org buffer before refile
|
||||||
(advice-add 'org-refile :after 'org-save-all-org-buffers)
|
(advice-add 'org-refile :after 'org-save-all-org-buffers)
|
||||||
|
@ -575,85 +532,85 @@ kept-old-versions 5)
|
||||||
(add-to-list 'org-structure-template-alist '("py" . "src python"))
|
(add-to-list 'org-structure-template-alist '("py" . "src python"))
|
||||||
|
|
||||||
(setq org-todo-keywords
|
(setq org-todo-keywords
|
||||||
'((sequence "TODO(t)" "NEXT(n)" "|" "DONE(d!)")
|
'((sequence "TODO(t)" "NEXT(n)" "|" "DONE(d!)")
|
||||||
(sequence "BACKLOG(b)" "PLAN(p)" "READY(r)" "ACTIVE(a)" "REVIEW(v)" "WAIT(w@/!)" "HOLD(h)" "|" "COMPLETED(c)" "CANCELED(k@)")))
|
(sequence "BACKLOG(b)" "PLAN(p)" "READY(r)" "ACTIVE(a)" "REVIEW(v)" "WAIT(w@/!)" "HOLD(h)" "|" "COMPLETED(c)" "CANCELED(k@)")))
|
||||||
|
|
||||||
(setq org-refile-targets
|
(setq org-refile-targets
|
||||||
'(("archive.org" :maxlevel . 1)
|
'(("archive.org" :maxlevel . 1)
|
||||||
("tasks.org" :maxlevel . 1)))
|
("tasks.org" :maxlevel . 1)))
|
||||||
|
|
||||||
;; Save Org buffers after refiling!
|
;; Save Org buffers after refiling!
|
||||||
(advice-add 'org-refile :after 'org-save-all-org-buffers)
|
(advice-add 'org-refile :after 'org-save-all-org-buffers)
|
||||||
|
|
||||||
(setq org-tag-alist
|
(setq org-tag-alist
|
||||||
'((:startgroup)
|
'((:startgroup)
|
||||||
; Put mutually exclusive tags here
|
; Put mutually exclusive tags here
|
||||||
(:endgroup)
|
(:endgroup)
|
||||||
("@errand" . ?E)
|
("@errand" . ?E)
|
||||||
("@home" . ?H)
|
("@home" . ?H)
|
||||||
("@work" . ?W)
|
("@work" . ?W)
|
||||||
("agenda" . ?a)
|
("agenda" . ?a)
|
||||||
("planning" . ?p)
|
("planning" . ?p)
|
||||||
("publish" . ?P)
|
("publish" . ?P)
|
||||||
("batch" . ?b)
|
("batch" . ?b)
|
||||||
("note" . ?n)
|
("note" . ?n)
|
||||||
("idea" . ?i)))
|
("idea" . ?i)))
|
||||||
|
|
||||||
;; Configure custom agenda views
|
;; Configure custom agenda views
|
||||||
(setq org-agenda-custom-commands
|
(setq org-agenda-custom-commands
|
||||||
'(("d" "Dashboard"
|
'(("d" "Dashboard"
|
||||||
((agenda "" ((org-deadline-warning-days 7)))
|
((agenda "" ((org-deadline-warning-days 7)))
|
||||||
(todo "NEXT"
|
(todo "NEXT"
|
||||||
((org-agenda-overriding-header "Next Tasks")))
|
((org-agenda-overriding-header "Next Tasks")))
|
||||||
(tags-todo "agenda/ACTIVE" ((org-agenda-overriding-header "Active Projects")))))
|
(tags-todo "agenda/ACTIVE" ((org-agenda-overriding-header "Active Projects")))))
|
||||||
|
|
||||||
("n" "Next Tasks"
|
("n" "Next Tasks"
|
||||||
((todo "NEXT"
|
((todo "NEXT"
|
||||||
((org-agenda-overriding-header "Next Tasks")))))
|
((org-agenda-overriding-header "Next Tasks")))))
|
||||||
|
|
||||||
("W" "Work Tasks" tags-todo "+work-email")
|
("W" "Work Tasks" tags-todo "+work-email")
|
||||||
|
|
||||||
;; Low-effort next actions
|
;; Low-effort next actions
|
||||||
("e" tags-todo "+TODO=\"NEXT\"+Effort<15&+Effort>0"
|
("e" tags-todo "+TODO=\"NEXT\"+Effort<15&+Effort>0"
|
||||||
((org-agenda-overriding-header "Low Effort Tasks")
|
((org-agenda-overriding-header "Low Effort Tasks")
|
||||||
(org-agenda-max-todos 20)
|
(org-agenda-max-todos 20)
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
|
|
||||||
("w" "Workflow Status"
|
("w" "Workflow Status"
|
||||||
((todo "WAIT"
|
((todo "WAIT"
|
||||||
((org-agenda-overriding-header "Waiting on External")
|
((org-agenda-overriding-header "Waiting on External")
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
(todo "REVIEW"
|
(todo "REVIEW"
|
||||||
((org-agenda-overriding-header "In Review")
|
((org-agenda-overriding-header "In Review")
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
(todo "PLAN"
|
(todo "PLAN"
|
||||||
((org-agenda-overriding-header "In Planning")
|
((org-agenda-overriding-header "In Planning")
|
||||||
(org-agenda-todo-list-sublevels nil)
|
(org-agenda-todo-list-sublevels nil)
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
(todo "BACKLOG"
|
(todo "BACKLOG"
|
||||||
((org-agenda-overriding-header "Project Backlog")
|
((org-agenda-overriding-header "Project Backlog")
|
||||||
(org-agenda-todo-list-sublevels nil)
|
(org-agenda-todo-list-sublevels nil)
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
(todo "READY"
|
(todo "READY"
|
||||||
((org-agenda-overriding-header "Ready for Work")
|
((org-agenda-overriding-header "Ready for Work")
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
(todo "ACTIVE"
|
(todo "ACTIVE"
|
||||||
((org-agenda-overriding-header "Active Projects")
|
((org-agenda-overriding-header "Active Projects")
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
(todo "COMPLETED"
|
(todo "COMPLETED"
|
||||||
((org-agenda-overriding-header "Completed Projects")
|
((org-agenda-overriding-header "Completed Projects")
|
||||||
(org-agenda-files org-agenda-files)))
|
(org-agenda-files org-agenda-files)))
|
||||||
(todo "CANC"
|
(todo "CANC"
|
||||||
((org-agenda-overriding-header "Cancelled Projects")
|
((org-agenda-overriding-header "Cancelled Projects")
|
||||||
(org-agenda-files org-agenda-files)))))))
|
(org-agenda-files org-agenda-files)))))))
|
||||||
|
|
||||||
(setq org-capture-templates
|
(setq org-capture-templates
|
||||||
`(("t" "Tasks / Projects")
|
`(("t" "Tasks / Projects")
|
||||||
("tt" "Task" entry (file+olp "~/Projects/Code/emacs-from-scratch/OrgFiles/Tasks.org" "Inbox")
|
("tt" "Task" entry (file+olp "~/Projects/Code/emacs-from-scratch/OrgFiles/Tasks.org" "Inbox")
|
||||||
"* TODO %?\n %U\n %a\n %i" :empty-lines 1)
|
"* TODO %?\n %U\n %a\n %i" :empty-lines 1)
|
||||||
|
|
||||||
("j" "Journal Entries")
|
("j" "Journal Entries")
|
||||||
("jj" "Journal" entry
|
("jj" "Journal" entry
|
||||||
(file+olp+datetree "~/Projects/Code/emacs-from-scratch/OrgFiles/Journal.org")
|
(file+olp+datetree "~/Projects/Code/emacs-from-scratch/OrgFiles/Journal.org")
|
||||||
"\n* %<%I:%M %p> - Journal :journal:\n\n%?\n\n"
|
"\n* %<%I:%M %p> - Journal :journal:\n\n%?\n\n"
|
||||||
;; ,(dw/read-file-as-string "~/Notes/Templates/Daily.org")
|
;; ,(dw/read-file-as-string "~/Notes/Templates/Daily.org")
|
||||||
|
@ -661,12 +618,9 @@ kept-old-versions 5)
|
||||||
:empty-lines 1))))
|
:empty-lines 1))))
|
||||||
|
|
||||||
(use-package olivetti
|
(use-package olivetti
|
||||||
:straight t
|
|
||||||
:hook (org-mode . (lambda () (interactive) (olivetti-mode) (olivetti-set-width 100))))
|
:hook (org-mode . (lambda () (interactive) (olivetti-mode) (olivetti-set-width 100))))
|
||||||
|
|
||||||
(use-package org-roam
|
(use-package org-roam
|
||||||
:straight t
|
|
||||||
:ensure t
|
|
||||||
:custom
|
:custom
|
||||||
(org-roam-directory "~/org/notes")
|
(org-roam-directory "~/org/notes")
|
||||||
:bind (("C-c n l" . org-roam-buffer-toggle)
|
:bind (("C-c n l" . org-roam-buffer-toggle)
|
||||||
|
@ -676,9 +630,7 @@ kept-old-versions 5)
|
||||||
(org-roam-setup))
|
(org-roam-setup))
|
||||||
|
|
||||||
(use-package treemacs
|
(use-package treemacs
|
||||||
:ensure t
|
|
||||||
:defer t
|
:defer t
|
||||||
:straight t
|
|
||||||
:init
|
:init
|
||||||
(with-eval-after-load 'winum
|
(with-eval-after-load 'winum
|
||||||
(define-key winum-keymap (kbd "M-0") #'treemacs-select-window))
|
(define-key winum-keymap (kbd "M-0") #'treemacs-select-window))
|
||||||
|
@ -767,42 +719,31 @@ kept-old-versions 5)
|
||||||
("C-x t M-t" . treemacs-find-tag)))
|
("C-x t M-t" . treemacs-find-tag)))
|
||||||
|
|
||||||
(use-package treemacs-evil
|
(use-package treemacs-evil
|
||||||
:after (treemacs evil)
|
:after (treemacs evil))
|
||||||
:straight t
|
|
||||||
:ensure t)
|
|
||||||
|
|
||||||
(use-package treemacs-projectile
|
(use-package treemacs-projectile
|
||||||
:after (treemacs projectile)
|
:after (treemacs projectile))
|
||||||
:straight t
|
|
||||||
:ensure t)
|
|
||||||
|
|
||||||
(use-package treemacs-magit
|
(use-package treemacs-magit
|
||||||
:after (treemacs magit)
|
:after (treemacs magit))
|
||||||
:straight t
|
|
||||||
:ensure t)
|
|
||||||
|
|
||||||
(use-package treemacs-nerd-icons
|
(use-package treemacs-nerd-icons
|
||||||
:straight t
|
|
||||||
:config
|
:config
|
||||||
(treemacs-load-theme "nerd-icons"))
|
(treemacs-load-theme "nerd-icons"))
|
||||||
|
|
||||||
(use-package magit
|
(use-package magit
|
||||||
:straight t
|
|
||||||
:custom
|
:custom
|
||||||
(magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)
|
(magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)
|
||||||
)
|
)
|
||||||
(use-package magit-todos
|
(use-package magit-todos
|
||||||
:straight t
|
|
||||||
:after magit
|
:after magit
|
||||||
:config (magit-todos-mode 1))
|
:config (magit-todos-mode 1))
|
||||||
|
|
||||||
(use-package forge
|
(use-package forge
|
||||||
:straight t
|
|
||||||
:after magit)
|
:after magit)
|
||||||
(setq auth-sources '("~/.authinfo"))
|
(setq auth-sources '("~/.authinfo"))
|
||||||
|
|
||||||
(use-package direnv
|
(use-package direnv
|
||||||
:straight t
|
|
||||||
:config
|
:config
|
||||||
(direnv-mode))
|
(direnv-mode))
|
||||||
|
|
||||||
|
@ -811,7 +752,6 @@ kept-old-versions 5)
|
||||||
(lsp-headerline-breadcrumb-mode))
|
(lsp-headerline-breadcrumb-mode))
|
||||||
|
|
||||||
(use-package lsp-mode
|
(use-package lsp-mode
|
||||||
:straight t
|
|
||||||
:commands (lsp lsp-deferred)
|
:commands (lsp lsp-deferred)
|
||||||
:hook (lsp-mode . sakomacs/lsp-mode-setup)
|
:hook (lsp-mode . sakomacs/lsp-mode-setup)
|
||||||
:init
|
:init
|
||||||
|
@ -822,28 +762,23 @@ kept-old-versions 5)
|
||||||
|
|
||||||
(use-package lsp-ui
|
(use-package lsp-ui
|
||||||
:hook (lsp-mode . lsp-ui-mode)
|
:hook (lsp-mode . lsp-ui-mode)
|
||||||
:straight t
|
|
||||||
:custom
|
:custom
|
||||||
(lsp-ui-doc-position 'bottom))
|
(lsp-ui-doc-position 'bottom))
|
||||||
|
|
||||||
(use-package lsp-treemacs
|
(use-package lsp-treemacs
|
||||||
:straight t
|
|
||||||
:after lsp)
|
:after lsp)
|
||||||
|
|
||||||
(use-package lsp-ivy
|
(use-package lsp-ivy
|
||||||
:straight t
|
|
||||||
)
|
)
|
||||||
|
|
||||||
(use-package web-mode
|
(use-package web-mode
|
||||||
:straight t
|
|
||||||
:hook (web-mode . lsp)
|
:hook (web-mode . lsp)
|
||||||
:mode ("\\.html\\'"
|
:mode ("\\.html\\'"
|
||||||
"\\.css\\'"))
|
"\\.css\\'"))
|
||||||
|
|
||||||
(use-package js2-mode
|
(use-package js2-mode
|
||||||
:straight t
|
|
||||||
:mode ("\\.js\\'"
|
:mode ("\\.js\\'"
|
||||||
"\\.jsx\\'")
|
"\\.jsx\\'")
|
||||||
:hook (js2-mode . lsp)
|
:hook (js2-mode . lsp)
|
||||||
:config
|
:config
|
||||||
(setq web-mode-markup-indent-offset 2) ; HTML
|
(setq web-mode-markup-indent-offset 2) ; HTML
|
||||||
|
@ -852,9 +787,8 @@ kept-old-versions 5)
|
||||||
(setq web-mode-content-types-alist '(("jsx" . "\\.js[x]?\\'"))))
|
(setq web-mode-content-types-alist '(("jsx" . "\\.js[x]?\\'"))))
|
||||||
|
|
||||||
(use-package typescript-mode
|
(use-package typescript-mode
|
||||||
:straight t
|
|
||||||
:mode ("\\.ts\\'"
|
:mode ("\\.ts\\'"
|
||||||
"\\.tsx\\'")
|
"\\.tsx\\'")
|
||||||
:hook (typescript-mode . lsp))
|
:hook (typescript-mode . lsp))
|
||||||
|
|
||||||
(define-derived-mode astro-mode web-mode "astro")
|
(define-derived-mode astro-mode web-mode "astro")
|
||||||
|
@ -881,22 +815,18 @@ kept-old-versions 5)
|
||||||
|
|
||||||
(use-package cmake-mode
|
(use-package cmake-mode
|
||||||
:mode "CMakeLists.txt"
|
:mode "CMakeLists.txt"
|
||||||
:straight t
|
|
||||||
:hook (cmake-mode . lsp))
|
:hook (cmake-mode . lsp))
|
||||||
|
|
||||||
(use-package lua-mode
|
(use-package lua-mode
|
||||||
:mode "\\.lua\\'"
|
:mode "\\.lua\\'"
|
||||||
:straight t
|
|
||||||
:hook (lua-mode . lsp))
|
:hook (lua-mode . lsp))
|
||||||
|
|
||||||
(use-package python-mode
|
(use-package python-mode
|
||||||
:mode "\\.py\\'"
|
:mode "\\.py\\'"
|
||||||
:straight t
|
|
||||||
:hook (python-mode . lsp))
|
:hook (python-mode . lsp))
|
||||||
|
|
||||||
(use-package elpy
|
(use-package elpy
|
||||||
:after python-mode
|
:after python-mode
|
||||||
:straight t
|
|
||||||
|
|
||||||
:custom
|
:custom
|
||||||
(elpy-rpc-python-command "python3")
|
(elpy-rpc-python-command "python3")
|
||||||
|
@ -905,51 +835,41 @@ kept-old-versions 5)
|
||||||
(elpy-enable))
|
(elpy-enable))
|
||||||
|
|
||||||
(use-package lsp-pyright
|
(use-package lsp-pyright
|
||||||
:ensure t
|
|
||||||
:straight t
|
|
||||||
:hook (python-mode . (lambda ()
|
:hook (python-mode . (lambda ()
|
||||||
(require 'lsp-pyright)
|
(require 'lsp-pyright)
|
||||||
(lsp)))) ; or lsp-deferred
|
(lsp)))) ; or lsp-deferred
|
||||||
|
|
||||||
(use-package haskell-mode
|
(use-package haskell-mode
|
||||||
:mode "\\.hs\\'"
|
:mode "\\.hs\\'"
|
||||||
:straight t
|
|
||||||
:hook (python-mode . lsp))
|
:hook (python-mode . lsp))
|
||||||
|
|
||||||
(use-package yaml-mode
|
(use-package yaml-mode
|
||||||
:straight t
|
:mode ("\\.yaml\\'"
|
||||||
:mode ("\\.yaml\\'"
|
"\\.yml\\'"))
|
||||||
"\\.yml\\'"))
|
|
||||||
|
|
||||||
(use-package nix-mode
|
(use-package nix-mode
|
||||||
:straight t
|
|
||||||
:hook ((nix-mode . lsp)
|
:hook ((nix-mode . lsp)
|
||||||
(nix-mode . format-all-mode)
|
(nix-mode . format-all-mode)
|
||||||
(nix-mode . (lambda () (setq-local format-all-formatters '(("Nix" alejandra))))))
|
(nix-mode . (lambda () (setq-local format-all-formatters '(("Nix" alejandra))))))
|
||||||
:mode "\\.nix\\'")
|
:mode "\\.nix\\'")
|
||||||
|
|
||||||
(use-package dart-mode
|
(use-package dart-mode
|
||||||
:straight t
|
|
||||||
:hook (dart-mode . lsp)
|
:hook (dart-mode . lsp)
|
||||||
:mode "\\.dart\\'" )
|
:mode "\\.dart\\'" )
|
||||||
|
|
||||||
(use-package markdown-mode
|
(use-package markdown-mode
|
||||||
:straight t
|
|
||||||
:hook (markdown-mode . visual-line-mode))
|
:hook (markdown-mode . visual-line-mode))
|
||||||
|
|
||||||
(use-package markdown-preview-mode
|
(use-package markdown-preview-mode
|
||||||
:straight t)
|
|
||||||
|
|
||||||
(use-package evil-nerd-commenter
|
(use-package evil-nerd-commenter
|
||||||
:straight t
|
|
||||||
:bind ("M-/" . evilnc-comment-or-uncomment-lines))
|
:bind ("M-/" . evilnc-comment-or-uncomment-lines))
|
||||||
|
|
||||||
(use-package company
|
(use-package company
|
||||||
:straight t
|
|
||||||
:after lsp-mode
|
:after lsp-mode
|
||||||
:hook (lsp-mode . company-mode)
|
:hook (lsp-mode . company-mode)
|
||||||
:bind (:map company-active-map
|
:bind (:map company-active-map
|
||||||
("<tab>" . company-complete-selection))
|
("<tab>" . company-complete-selection))
|
||||||
(:map lsp-mode-map
|
(:map lsp-mode-map
|
||||||
("<tab>" . company-indent-or-complete-common))
|
("<tab>" . company-indent-or-complete-common))
|
||||||
:custom
|
:custom
|
||||||
|
@ -959,13 +879,11 @@ kept-old-versions 5)
|
||||||
(company-tooltip-align-annotations t))
|
(company-tooltip-align-annotations t))
|
||||||
|
|
||||||
(use-package company-box
|
(use-package company-box
|
||||||
:straight t
|
|
||||||
:hook (company-mode . company-box-mode))
|
:hook (company-mode . company-box-mode))
|
||||||
|
|
||||||
(use-package flycheck :straight t :config (global-flycheck-mode +1))
|
(use-package flycheck :config (global-flycheck-mode +1))
|
||||||
|
|
||||||
(use-package format-all
|
(use-package format-all
|
||||||
:straight t
|
|
||||||
)
|
)
|
||||||
|
|
||||||
(use-package fancy-compilation
|
(use-package fancy-compilation
|
||||||
|
@ -975,19 +893,15 @@ kept-old-versions 5)
|
||||||
(fancy-compilation-mode))
|
(fancy-compilation-mode))
|
||||||
|
|
||||||
(use-package yasnippet
|
(use-package yasnippet
|
||||||
:straight t
|
|
||||||
:diminish yas-minor-mode
|
:diminish yas-minor-mode
|
||||||
:hook (after-init . yas-global-mode))
|
:hook (after-init . yas-global-mode))
|
||||||
|
|
||||||
(use-package yasnippet-snippets
|
(use-package yasnippet-snippets
|
||||||
:straight t)
|
|
||||||
|
|
||||||
(use-package yasnippet-capf
|
(use-package yasnippet-capf
|
||||||
:straight t
|
|
||||||
:init (add-to-list 'completion-at-point-functions #'yasnippet-capf))
|
:init (add-to-list 'completion-at-point-functions #'yasnippet-capf))
|
||||||
|
|
||||||
(use-package dired
|
(use-package dired
|
||||||
:ensure nil
|
|
||||||
:commands (dired dired-jump)
|
:commands (dired dired-jump)
|
||||||
:bind (("C-x C-j" . dired-jump))
|
:bind (("C-x C-j" . dired-jump))
|
||||||
:custom ((dired-listing-switches "-agho --group-directories-first"))
|
:custom ((dired-listing-switches "-agho --group-directories-first"))
|
||||||
|
@ -1014,7 +928,6 @@ kept-old-versions 5)
|
||||||
;(setq user-emacs-directory "~/.cache/emacs")
|
;(setq user-emacs-directory "~/.cache/emacs")
|
||||||
|
|
||||||
(use-package no-littering
|
(use-package no-littering
|
||||||
:straight t
|
|
||||||
)
|
)
|
||||||
|
|
||||||
;; no-littering doesn't set this by default so we must place
|
;; no-littering doesn't set this by default so we must place
|
||||||
|
@ -1023,7 +936,6 @@ kept-old-versions 5)
|
||||||
`((".*" ,(no-littering-expand-var-file-name "auto-save/") t)))
|
`((".*" ,(no-littering-expand-var-file-name "auto-save/") t)))
|
||||||
|
|
||||||
(use-package elfeed
|
(use-package elfeed
|
||||||
:straight t
|
|
||||||
:config
|
:config
|
||||||
(setq elfeed-use-curl t)
|
(setq elfeed-use-curl t)
|
||||||
(setq browse-url-browser-function 'eww-browse-url)
|
(setq browse-url-browser-function 'eww-browse-url)
|
||||||
|
@ -1031,7 +943,6 @@ kept-old-versions 5)
|
||||||
)
|
)
|
||||||
|
|
||||||
(use-package elfeed-protocol
|
(use-package elfeed-protocol
|
||||||
:straight t
|
|
||||||
:after elfeed
|
:after elfeed
|
||||||
:config
|
:config
|
||||||
(elfeed-set-timeout 36000)
|
(elfeed-set-timeout 36000)
|
||||||
|
@ -1065,7 +976,6 @@ kept-old-versions 5)
|
||||||
(use-package telega)
|
(use-package telega)
|
||||||
|
|
||||||
(use-package pdf-tools
|
(use-package pdf-tools
|
||||||
:straight t
|
|
||||||
:mode ("\\.pdf\\'" . pdf-view-mode)
|
:mode ("\\.pdf\\'" . pdf-view-mode)
|
||||||
:config
|
:config
|
||||||
(setq-default pdf-view-display-size 'fit-page)
|
(setq-default pdf-view-display-size 'fit-page)
|
||||||
|
@ -1073,7 +983,6 @@ kept-old-versions 5)
|
||||||
(pdf-tools-install))
|
(pdf-tools-install))
|
||||||
|
|
||||||
(use-package ement
|
(use-package ement
|
||||||
:straight t)
|
|
||||||
|
|
||||||
;; global defaults
|
;; global defaults
|
||||||
;; (use-package mu4e
|
;; (use-package mu4e
|
||||||
|
@ -1082,8 +991,7 @@ kept-old-versions 5)
|
||||||
;; )
|
;; )
|
||||||
|
|
||||||
;; we need this regardless of platform
|
;; we need this regardless of platform
|
||||||
(use-package smtpmail
|
(use-package smtpmail)
|
||||||
:straight t)
|
|
||||||
|
|
||||||
(org-babel-do-load-languages
|
(org-babel-do-load-languages
|
||||||
'org-babel-load-languages
|
'org-babel-load-languages
|
||||||
|
@ -1117,7 +1025,6 @@ kept-old-versions 5)
|
||||||
(use-package eshell-git-prompt)
|
(use-package eshell-git-prompt)
|
||||||
|
|
||||||
(use-package eshell
|
(use-package eshell
|
||||||
:straight t
|
|
||||||
:hook (eshell-first-time-mode . sakomacs/configure-eshell)
|
:hook (eshell-first-time-mode . sakomacs/configure-eshell)
|
||||||
:config
|
:config
|
||||||
|
|
||||||
|
@ -1128,7 +1035,6 @@ kept-old-versions 5)
|
||||||
(eshell-git-prompt-use-theme 'powerline))
|
(eshell-git-prompt-use-theme 'powerline))
|
||||||
|
|
||||||
(use-package vterm
|
(use-package vterm
|
||||||
:straight t
|
|
||||||
:commands vterm
|
:commands vterm
|
||||||
:config
|
:config
|
||||||
(setq vterm-max-scrollback 10000))
|
(setq vterm-max-scrollback 10000))
|
||||||
|
|
30
flake.lock
30
flake.lock
|
@ -25,7 +25,9 @@
|
||||||
"emacs-overlay": {
|
"emacs-overlay": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils_2",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -117,16 +119,16 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703255338,
|
"lastModified": 1703068421,
|
||||||
"narHash": "sha256-Z6wfYJQKmDN9xciTwU3cOiOk+NElxdZwy/FiHctCzjU=",
|
"narHash": "sha256-WSw5Faqlw75McIflnl5v7qVD/B3S2sLh+968bpOGrWA=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "6df37dc6a77654682fe9f071c62b4242b5342e04",
|
"rev": "d65bceaee0fb1e64363f7871bc43dc1c6ecad99f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-23.11",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -179,28 +181,12 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1703068421,
|
|
||||||
"narHash": "sha256-WSw5Faqlw75McIflnl5v7qVD/B3S2sLh+968bpOGrWA=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "d65bceaee0fb1e64363f7871bc43dc1c6ecad99f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-23.11",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"NixOS-WSL": "NixOS-WSL",
|
"NixOS-WSL": "NixOS-WSL",
|
||||||
"emacs-overlay": "emacs-overlay",
|
"emacs-overlay": "emacs-overlay",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"sops-nix": "sops-nix"
|
"sops-nix": "sops-nix"
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@ in {
|
||||||
install = true;
|
install = true;
|
||||||
#package = pkgs.emacs29-pgtk;
|
#package = pkgs.emacs29-pgtk;
|
||||||
package = (pkgs.emacsWithPackagesFromUsePackage {
|
package = (pkgs.emacsWithPackagesFromUsePackage {
|
||||||
config = ../../../../config/emacs/emacs.org;
|
config = ../../../../config/emacs/init.el;
|
||||||
defaultInitFile = true;
|
defaultInitFile = true;
|
||||||
package = pkgs.emacs-pgtk;
|
package = pkgs.emacs-pgtk;
|
||||||
alwaysEnsure = true;
|
alwaysEnsure = true;
|
||||||
|
|
Loading…
Reference in a new issue