aboutsummaryrefslogtreecommitdiff
path: root/config.el
diff options
context:
space:
mode:
authorMagdalena Szweda <hi@roughlynamed.net>2026-09-23 19:38:14 +0200
committerMagdalena Szweda <hi@roughlynamed.net>2026-09-25 19:09:39 +0200
commit01f226abb9775c5e33458b634e7793fa8f443c60 (patch)
treebadeee4e3e88e5e6f423442964b364ce4c318962 /config.el
parentcbfbc8d090478d7fd040174aaf68189cfb95029e (diff)
fuckton of shit, mainly switch from helm + company -> vertico + corfu/cape
Diffstat (limited to 'config.el')
-rw-r--r--config.el163
1 files changed, 100 insertions, 63 deletions
diff --git a/config.el b/config.el
index 9c8abba..ba72ebf 100644
--- a/config.el
+++ b/config.el
@@ -16,15 +16,17 @@
(setq doom-theme 'modus-vivendi)
;; (setq doom-theme 'tango)
+(setq custom-safe-themes t)
+
(setq doom-font (font-spec :family "Berkeley Mono" :size 12.0))
(setq display-line-numbers-type t)
(use-package! mood-line
- :config
- (mood-line-mode)
- :custom
- (mood-line-glyph-alist mood-line-glyphs-fira-code))
+:config
+(mood-line-mode)
+:custom
+(mood-line-glyph-alist mood-line-glyphs-fira-code))
(defun my/split-window-dynamically ()
"Split the selected window, choosing orientation by its shape."
@@ -45,6 +47,8 @@
:config
(breadcrumb-mode 1))
+(setq +zen-mixed-pitch-modes '())
+
(defun my/hs-eval ()
(interactive)
(let* ((src (buffer-file-name))
@@ -87,13 +91,6 @@
(add-to-list 'flycheck-checkers 'htmlhint)
-(flycheck-add-next-checker
- 'javascript-eslint
- 'javascript-oxlint)
-(flycheck-add-next-checker
- 'html-tidy
- 'htmlhint)
-
(setq flycheck-check-syntax-automatically
'(save mode-enabled)))
@@ -134,20 +131,29 @@
smtpmail-smtp-service 465 ; port 465
smtpmail-stream-type 'ssl
message-send-mail-function #'smtpmail-send-it
-)
+ )
(setq gnus-message-archive-method '(nnimap "migadu") ; use migadu for archiving email
- gnus-message-archive-group "Sent") ; where to put sent mail
+ gnus-message-archive-group "Sent") ; where to put sent mail
(setq gnus-large-newsgroup nil
gnus-fetch-old-headers t
nnmail-expiry-target "Trash")
+(setq gnus-thread-sort-functions
+ '((not gnus-thread-sort-by-date)))
+
+(setq gnus-subthread-sort-functions
+ '((not gnus-thread-sort-by-date)))
+(setq gnus-thread-sort-most-recent-first t)
+
+(setq gnus-always-read-dribble-file nil)
+
(add-hook 'message-send-hook #'mml-secure-message-sign-pgpmime)
(with-eval-after-load "mm-decode"
-(add-to-list 'mm-discouraged-alternatives "text/html")
-(add-to-list 'mm-discouraged-alternatives "text/richtext"))
+ (add-to-list 'mm-discouraged-alternatives "text/html")
+ (add-to-list 'mm-discouraged-alternatives "text/richtext"))
(use-package! jabber
:config
@@ -227,19 +233,30 @@ emms-cache-file (concat doom-cache-dir "emms-cache"))
(after! org
(setq
- org-startup-indented t
- org-startup-folded t ; fold headers on startup
+ org-startup-folded t ; fold headers on startup
org-pretty-entities t
org-hide-emphasis-markers t
+ org-auto-align-tags nil
+ org-tags-column 0
+ org-catch-invisible-edits 'show-and-error
+ org-agenda-tags-column 0
org-capture-templates-contexts nil
+ org-insert-heading-respect-content t
+ org-special-ctrl-a/e t
+ org-return-follows-link t
org-confirm-babel-evaluate nil)
(org-babel-do-load-languages
- 'org-babel-load-languages
- '((emacs-lisp . t)
- (python . t)
- (C . t)
- (lisp . t))))
+'org-babel-load-languages
+'((emacs-lisp . t)
+ (python . t)
+ (C . t)
+ (lisp . t))))
+
+(use-package! poly-org
+ :hook (org-mode . poly-org-mode))
+
+(add-hook 'org-src-mode-hook #'eglot-ensure)
(add-hook 'org-capture-mode-hook #'delete-other-windows)
(add-hook 'org-capture-mode-hook
@@ -257,14 +274,14 @@ org-confirm-babel-evaluate nil)
collect (aref chars (random (length chars)))))))
(setq org-roam-capture-templates
- '(("d" "default" plain
- "* %?"
- :if-new
+ '(("d" "default" plain
+ "* %?"
+ :if-new
(file+head
- (lambda () (concat (my/org-roam-short-id) ".org"))
- "#+TITLE: %^{title|Untitled}\n#+FILETAGS: :%^{tags}:\n\n") ; title&tags
- :unnarrowed t)))
+ (lambda () (concat (my/org-roam-short-id) ".org"))
+ "#+TITLE: %^{title|Untitled}\n#+FILETAGS: :%^{tags}:\n\n") ; title&tags
+:unnarrowed t)))
(cl-defmethod org-roam-node-file-stem ((node org-roam-node))
(file-name-base (org-roam-node-file node)))
@@ -278,27 +295,27 @@ org-confirm-babel-evaluate nil)
org-roam-unlinked-references-section))
(defun my/org-roam-check-self-link ()
- (when-let* ((node (org-roam-node-at-point))
- (id (org-roam-node-id node)))
- (save-excursion
- (goto-char (point-min))
- (while (re-search-forward org-link-any-re nil t)
- (when (string-match-p (regexp-quote id) (match-string 0))
- (message "Warning: self-link detected"))))))
+ (when-let* ((node (org-roam-node-at-point))
+ (id (org-roam-node-id node)))
+ (save-excursion
+ (goto-char (point-min))
+ (while (re-search-forward org-link-any-re nil t)
+ (when (string-match-p (regexp-quote id) (match-string 0))
+ (message "Warning: self-link detected"))))))
(defun my/org-roam-check-dead-links ()
- (dolist (link (org-roam-db-query
- [:select [dest] :from links
- :where (= source $s1)] (org-roam-id-at-point)))
- (unless (org-roam-db-query [:select id :from nodes :where (= id $s1)] (car link))
- (message "Error: dead link to %s" (car link)))))
+ (dolist (link (org-roam-db-query
+ [:select [dest] :from links
+ :where (= source $s1)] (org-roam-id-at-point)))
+ (unless (org-roam-db-query [:select id :from nodes :where (= id $s1)] (car link))
+ (message "Error: dead link to %s" (car link)))))
(add-hook 'before-save-hook
- (lambda ()
- (when (org-roam-file-p)
- (my/org-roam-check-self-link)
- (my/org-roam-check-dead-links)))
- nil t)
+ (lambda ()
+ (when (org-roam-file-p)
+ (my/org-roam-check-self-link)
+ (my/org-roam-check-dead-links)))
+ nil t)
(map!
:leader
@@ -331,7 +348,7 @@ org-html-postamble nil))
(setq org-roam-ui-sync-theme t ; use emacs theme
org-roam-ui-follow t
org-roam-ui-update-on-save t ; update when a org roam file is saved
-))
+ ))
(use-package! org-appear
:hook (org-mode . org-appear-mode)
@@ -341,6 +358,10 @@ org-html-postamble nil))
org-appear-autosubmarkers t
org-appear-autoentities t))
+(use-package! org-modern-indent
+ :defer t
+:hook (org-mode . org-modern-indent-mode))
+
(setq eww-search-prefix "https://ecosia.org/search?q=")
(setq eww-download-directory (expand-file-name "~/Downloads/"))
@@ -403,6 +424,12 @@ org-html-postamble nil))
(use-package! elpher)
+(map!
+ :leader
+ :prefix "o g"
+ :desc "Elpher" "e" #'elpher
+ :desc "Browse Elpher" "b" #'elpher-browse-url-elpher)
+
(use-package! mosey
:commands (mosey-forward mosey-backward
mosey-forward-bounce mosey-backward-bounce
@@ -413,14 +440,10 @@ org-html-postamble nil))
:desc "Mosey backward" "a" #'mosey-backward-bounce
:desc "Mosey forward" "e" #'mosey-forward-bounce))
-(use-package! aggressive-indent
- :config
- (global-aggressive-indent-mode 1)) ; use aggressive-indent everywhere
-
(map!
:leader
:prefix "o"
- :desc "Woman" "w" #'helm-man-woman)
+ :desc "Woman" "w" #'woman)
(map!
:leader
@@ -428,8 +451,22 @@ org-html-postamble nil))
:desc "Dired" "d" #'dired
:desc "Dired here" "h" #'dired-jump)
+(use-package! eat
+ :defer t)
+
+(map!
+ :leader
+ :prefix "o"
+ :desc "Open Eat" "e" #'eat-other-window) ; dont steal the current window
+
(remove-hook 'doom-first-input-hook #'evil-snipe-mode)
+(use-package lispyville
+ :init
+ (general-add-hook '(emacs-lisp-mode-hook lisp-mode-hook) #'lispyville-mode) ;; lispy lisps
+ :config
+ (lispyville-set-key-theme '(operators c-w additional)))
+
(after! evil-org
(evil-define-key 'normal evil-org-mode-map
"o" #'evil-forward-char))
@@ -441,12 +478,12 @@ org-html-postamble nil))
"o" 'evil-forward-char)
(evil-define-key '(normal visual operator) 'global
- "l" 'evil-backward-word-begin
- "L" 'evil-backward-WORD-begin
- "u" 'evil-forward-word-end
- "U" 'evil-forward-WORD-end
- "y" 'evil-forward-word-begin
- "Y" 'evil-forward-word-begin)
+ "l" 'evil-backward-word-begin
+ "L" 'evil-backward-WORD-begin
+ "u" 'evil-forward-word-end
+ "U" 'evil-forward-WORD-end
+ "y" 'evil-forward-word-begin
+ "Y" 'evil-forward-word-begin)
(with-eval-after-load 'evil-ex
(define-key evil-ex-completion-map (kbd "C-l") 'left-word)
@@ -465,12 +502,12 @@ org-html-postamble nil))
"W" 'evil-change-line)
(evil-define-key 'normal 'global
- "x" 'evil-delete-char
- "c" 'evil-yank
- "v" 'evil-paste-after
- "X" 'evil-delete-line
- "C" 'evil-yank-line
- "V" 'evil-paste-before)
+ "x" 'evil-delete-char
+ "c" 'evil-yank
+ "v" 'evil-paste-after
+ "X" 'evil-delete-line
+ "C" 'evil-yank-line
+ "V" 'evil-paste-before)
(evil-define-key 'visual 'global
"x" 'evil-delete