X-Git-Url: https://git.shemshak.org/gitweb.cgi/~bandali/configs/blobdiff_plain/295b1b10b673f0fed28915b16e6d86931bc2f326..fdca8cf9fa1f76ac7333013119052d1e386f7c53:/.emacs.d/init.el diff --git a/.emacs.d/init.el b/.emacs.d/init.el index e249f9b..162b118 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -266,9 +266,21 @@ (previous-line) (insert "\n \n;;; ")) +(defvar b/fill-column 47 + "My custom `fill-column'.") + +(defconst b/asterism "* * *") + (defun b/insert-asterism () + "Insert a centred asterism." (interactive) - (insert "\n\n * * *\n\n")) + (insert + (concat + "\n\n" + (make-string (floor (/ (- b/fill-column (length b/asterism)) 2)) + ?\s) + b/asterism + "\n\n"))) (defun b/no-mouse-autoselect-window () "Conveniently disable `focus-follows-mouse'. @@ -301,7 +313,9 @@ For disabling the behaviour for certain buffers and/or modes." scroll-conservatively 10 scroll-preserve-screen-position 1 ;; focus follows mouse - mouse-autoselect-window t) + mouse-autoselect-window t + ;; custom fill-column + fill-column b/fill-column) (setq-default ;; always use space for indentation @@ -543,12 +557,13 @@ For disabling the behaviour for certain buffers and/or modes." ;; for back and forward mouse keys ("" . previous-buffer) ("" . previous-buffer) - ("" . previous-buffer) + ;; ("" . previous-buffer) ("" . next-buffer) ("" . next-buffer) - ("" . next-buffer) - ("" . kill-this-buffer) - ("" . switch-to-buffer)) + ;; ("" . next-buffer) + ;; ("" . kill-this-buffer) + ;; ("" . switch-to-buffer) + ) (bind-keys :prefix-map b/straight-prefix-map @@ -1031,16 +1046,14 @@ This function is intended for use with `ivy-ignore-buffers'." (use-package swiper :demand :after ivy - :bind (("C-s" . swiper-isearch) - ("C-r" . swiper-isearch-backward) - ("C-S-s" . swiper-isearch))) + :bind (("C-S-s" . swiper-isearch))) (use-package counsel - :bind (;; ([remap execute-extended-command] . counsel-M-x) - ;; ([remap find-file] . counsel-find-file) - ("C-c f r" . counsel-recentf) + :demand + :after ivy + :bind (("C-c f r" . counsel-recentf) :map minibuffer-local-map - ("C-r" . counsel-minibuffer-history)) + ("C-r" . counsel-minibuffer-history)) :config (counsel-mode 1) (defalias 'locate #'counsel-locate)) @@ -1088,7 +1101,8 @@ This function is intended for use with `ivy-ignore-buffers'." ("C-S-l" . b/eshell-clear) ("M-r" . counsel-esh-history) ;; ([tab] . company-complete) - )) + :map eshell-hist-mode-map + ("M-r" . counsel-esh-history))) :hook (eshell-mode . b/eshell-setup) :custom @@ -1968,7 +1982,9 @@ This function is intended for use with `ivy-ignore-buffers'." :straight (debbugs :host github :repo "emacs-straight/debbugs" - :files (:defaults "Debbugs.wsdl"))) + :files (:defaults "Debbugs.wsdl")) + :custom + (debbugs-gnu-default-packages '("emacs" "gnuzilla"))) (use-package org-ref :init @@ -2156,6 +2172,8 @@ This function is intended for use with `ivy-ignore-buffers'." ;; (: gnus-group-split-fancy "INBOX" t "INBOX") ;; gnu (list ".*<\\(.*\\)\\.\\(non\\)?gnu\\.org>.*" "l.\\1") + ;; gnus + (list ".*<\\(.*\\)\\.gnus\\.org>.*" "l.\\1") ;; *.lists.sr.ht, omitting one dot if present ;; add more \\.?\\([^.]*\\) if needed (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists.sr.ht>.*" "l.~\\1.\\2\\3") @@ -2550,8 +2568,8 @@ https://csclub.uwaterloo.ca/~abandali") :hook (;; (message-setup . mml-secure-message-sign-pgpmime) (message-mode . flyspell-mode) (message-mode . (lambda () - ;; (setq fill-column 65 - ;; message-fill-column 65) + (setq-local fill-column b/fill-column + message-fill-column b/fill-column) (make-local-variable 'company-idle-delay) (setq company-idle-delay 0.2)))) ;; :custom-face @@ -2586,47 +2604,59 @@ https://csclub.uwaterloo.ca/~abandali") ("r" . footnote-renumber-footnotes) ("s" . footnote-set-style))) -(use-package ebdb +(use-package bbdb :demand :after gnus - :bind (:map gnus-group-mode-map ("e" . ebdb)) + :bind (:map gnus-group-mode-map ("e" . bbdb)) :config - (setq ebdb-sources (b/var "ebdb")) - (with-eval-after-load 'swiper - (add-to-list 'swiper-font-lock-exclude 'ebdb-mode t))) + (bbdb-initialize 'gnus 'message) + :custom + (bbdb-complete-mail-allow-cycling t) + (bbdb-user-mail-address-re message-dont-reply-to-names)) -(use-feature ebdb-com - :after ebdb) +(comment + (use-package ebdb + :demand + :after gnus + :bind (:map gnus-group-mode-map ("e" . ebdb)) + :config + (setq ebdb-sources (b/var "ebdb")) + (with-eval-after-load 'swiper + (add-to-list 'swiper-font-lock-exclude 'ebdb-mode t))) -(use-feature ebdb-complete - :after ebdb - :config - ;; (setq ebdb-complete-mail 'capf) - (ebdb-complete-enable)) + (use-feature ebdb-com + :after ebdb) -(use-feature ebdb-message - :demand - :after ebdb) + (use-feature ebdb-complete + :after ebdb + :config + ;; (setq ebdb-complete-mail 'capf) + (ebdb-complete-enable)) -;; (use-package company-ebdb -;; :config -;; (defun company-ebdb--post-complete (_) nil)) + (use-feature ebdb-message + :demand + :after ebdb) -(use-feature ebdb-gnus - :after ebdb - :custom - (ebdb-gnus-window-size 0.3)) + ;; (use-package company-ebdb + ;; :config + ;; (defun company-ebdb--post-complete (_) nil)) -(use-feature ebdb-mua - :demand - :after ebdb - :custom (ebdb-mua-pop-up t)) + (use-feature ebdb-gnus + :after ebdb + :custom + (ebdb-gnus-window-size 0.3)) + + (use-feature ebdb-mua + :demand + :after ebdb + :custom (ebdb-mua-pop-up t)) -;; (use-package ebdb-message -;; :after ebdb) + ;; (use-package ebdb-message + ;; :after ebdb) -;; (use-package ebdb-vcard -;; :after ebdb) + ;; (use-package ebdb-vcard + ;; :after ebdb) + ) (use-package message-x)