emacs: update packages (debbugs now recognizes gnuzilla)
[~bandali/configs] / .emacs.d / init.el
index b8d4ccb..5e3ce80 100644 (file)
@@ -543,12 +543,13 @@ For disabling the behaviour for certain buffers and/or modes."
  ;; for back and forward mouse keys
  ("<XF86Back>"     . previous-buffer)
  ("<mouse-8>"      . previous-buffer)
  ;; for back and forward mouse keys
  ("<XF86Back>"     . previous-buffer)
  ("<mouse-8>"      . previous-buffer)
- ("<drag-mouse-8>" . previous-buffer)
;; ("<drag-mouse-8>" . previous-buffer)
  ("<XF86Forward>"  . next-buffer)
  ("<mouse-9>"      . next-buffer)
  ("<XF86Forward>"  . next-buffer)
  ("<mouse-9>"      . next-buffer)
- ("<drag-mouse-9>" . next-buffer)
- ("<drag-mouse-2>" . kill-this-buffer)
- ("<drag-mouse-3>" . switch-to-buffer))
+ ;; ("<drag-mouse-9>" . next-buffer)
+ ;; ("<drag-mouse-2>" . kill-this-buffer)
+ ;; ("<drag-mouse-3>" . switch-to-buffer)
+ )
 
 (bind-keys
  :prefix-map b/straight-prefix-map
 
 (bind-keys
  :prefix-map b/straight-prefix-map
@@ -914,7 +915,7 @@ around if needed."
   :custom
   (magit-diff-refine-hunk t)
   (magit-display-buffer-function #'magit-display-buffer-fullframe-status-v1)
   :custom
   (magit-diff-refine-hunk t)
   (magit-display-buffer-function #'magit-display-buffer-fullframe-status-v1)
-  (magit-completing-read-function 'magit-ido-completing-read)
+  ;; (magit-completing-read-function 'magit-ido-completing-read)
   :custom-face (magit-diff-file-heading ((t (:weight normal)))))
 
 ;; recently opened files
   :custom-face (magit-diff-file-heading ((t (:weight normal)))))
 
 ;; recently opened files
@@ -936,59 +937,61 @@ around if needed."
  ("C-c f r" . recentf-open-files)
  ("C-c x"   . execute-extended-command))
 
  ("C-c f r" . recentf-open-files)
  ("C-c x"   . execute-extended-command))
 
-(use-feature ido
-  :demand
-  :bind
-  (:map ido-common-completion-map
-        ([escape] . minibuffer-keyboard-quit)
-        ("DEL"    . b/ido-backspace))
-  :config
-  (require 'delsel)
-  (defun b/ido-backspace ()
-    "Forward to `backward-delete-char'.  On error (read-only), quit."
-    (interactive)
-    (condition-case nil
-        (backward-delete-char 1)
-      (error
-       (minibuffer-keyboard-quit))))
-  (ido-mode 1)
-  (ido-everywhere 1)
-  :custom
-  (ido-enable-flex-matching t)
-  (ido-max-window-height 10)
-  (ido-use-virtual-buffers t))
+(comment
+  (use-feature ido
+    :demand
+    :bind
+    (:map ido-common-completion-map
+          ([escape] . minibuffer-keyboard-quit)
+          ("DEL"    . b/ido-backspace))
+    :config
+    (require 'delsel)
+    (defun b/ido-backspace ()
+      "Forward to `backward-delete-char'.  On error (read-only), quit."
+      (interactive)
+      (condition-case nil
+          (backward-delete-char 1)
+        (error
+         (minibuffer-keyboard-quit))))
+    (ido-mode 1)
+    (ido-everywhere 1)
+    :custom
+    (ido-enable-flex-matching t)
+    ;; (ido-enable-regexp t)
+    ;; (ido-enable-prefix t)
+    (ido-max-window-height 10)
+    (ido-use-virtual-buffers t))
+
+  (use-package ido-vertical-mode
+    :defer 0.3
+    :config
+    (ido-vertical-mode 1)
+    :custom
+    (ido-vertical-define-keys 'C-n-C-p-up-and-down)
+    (ido-vertical-show-count t))
 
 
-(use-package ido-vertical-mode
-  :defer 0.3
-  :config
-  (ido-vertical-mode 1)
-  :custom
-  (ido-vertical-define-keys 'C-n-C-p-up-and-down)
-  (ido-vertical-show-count t))
+  (use-package ido-completing-read+
+    :defer 0.3
+    :after ido
+    :config
+    (ido-ubiquitous-mode 1))
 
 
-(use-package ido-completing-read+
-  :defer 0.3
-  :after ido
-  :config
-  (ido-ubiquitous-mode 1))
+  (use-package crm-custom
+    :defer 0.3
+    :config
+    (crm-custom-mode 1))
+
+  (use-feature icomplete
+    :defer 0.3
+    :config
+    (icomplete-mode 1)))
 
 (use-package amx
   :defer 0.3
   :config
   (amx-mode))
 
 
 (use-package amx
   :defer 0.3
   :config
   (amx-mode))
 
-(use-package crm-custom
-  :defer 0.3
-  :config
-  (crm-custom-mode 1))
-
-(use-feature icomplete
-  :defer 0.3
-  :config
-  (icomplete-mode 1))
-
 (use-package ivy
 (use-package ivy
-  :disabled
   :defer 0.3
   :bind
   (:map ivy-minibuffer-map
   :defer 0.3
   :bind
   (:map ivy-minibuffer-map
@@ -998,7 +1001,7 @@ around if needed."
    ("DEL"    . ivy-backward-delete-char))
   :config
   (setq ivy-wrap t
    ("DEL"    . ivy-backward-delete-char))
   :config
   (setq ivy-wrap t
-        ivy-height 14
+        ;; ivy-height 14
         ivy-use-virtual-buffers t
         ivy-virtual-abbreviate 'abbreviate
         ivy-count-format "%d/%d ")
         ivy-use-virtual-buffers t
         ivy-virtual-abbreviate 'abbreviate
         ivy-count-format "%d/%d ")
@@ -1016,32 +1019,30 @@ This function is intended for use with `ivy-ignore-buffers'."
   (add-to-list 'ivy-ignore-buffers 'b/ivy-ignore-buffer-p)
 
   (ivy-mode 1)
   (add-to-list 'ivy-ignore-buffers 'b/ivy-ignore-buffer-p)
 
   (ivy-mode 1)
-  ;; :custom-face
-  ;; (ivy-minibuffer-match-face-2 ((t (:background "#e99ce8" :weight semi-bold))))
-  ;; (ivy-minibuffer-match-face-3 ((t (:background "#bbbbff" :weight semi-bold))))
-  ;; (ivy-minibuffer-match-face-4 ((t (:background "#ffbbff" :weight semi-bold))))
-)
+  :custom-face
+  (ivy-minibuffer-match-face-1 ((t (:background "#eeeeee"))))
+  (ivy-minibuffer-match-face-2 ((t (:background "#e7e7e7" :weight bold))))
+  (ivy-minibuffer-match-face-3 ((t (:background "light goldenrod" :weight semi-bold))))
+  (ivy-minibuffer-match-face-4 ((t (:background "misty rose" :weight semi-bold))))
+  (ivy-current-match ((((class color) (background light))
+                       :background "#d7d7d7" :foreground "black")
+                      (((class color) (background dark))
+                       :background "#65a7e2" :foreground "black"))))
 
 (use-package swiper
 
 (use-package swiper
-  :commands (swiper swiper-isearch)
-  :bind (;; ("C-s"   . swiper-isearch)
-         ;; ("C-r"   . swiper)
-         ("C-S-s" . swiper-isearch)))
+  :demand
+  :after ivy
+  :bind (("C-S-s" . swiper-isearch)))
 
 (use-package counsel
 
 (use-package counsel
-  :commands (counsel-linux-app))
-  ;; :bind (([remap execute-extended-command] . counsel-M-x)
-  ;;        ([remap find-file]                . counsel-find-file)
-  ;;        ("C-c f ."                        . counsel-find-file)
-  ;;        ("C-c f l"                        . counsel-find-library)
-  ;;        ("C-c f r"                        . counsel-recentf)
-  ;;        ("C-c x"                          . counsel-M-x)
-  ;;        :map minibuffer-local-map
-  ;;        ("C-r" . counsel-minibuffer-history))
-  ;; :config
-  ;; (counsel-mode 1)
-  ;; (defalias 'locate #'counsel-locate)
-  ;; )
+  :demand
+  :after ivy
+  :bind (("C-c f r" . counsel-recentf)
+         :map minibuffer-local-map
+         ("C-r" . counsel-minibuffer-history))
+  :config
+  (counsel-mode 1)
+  (defalias 'locate #'counsel-locate))
 
 (comment
   (use-package helm
 
 (comment
   (use-package helm
@@ -1086,7 +1087,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)
                ("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
 
   :hook (eshell-mode . b/eshell-setup)
   :custom
@@ -1324,7 +1326,9 @@ This function is intended for use with `ivy-ignore-buffers'."
   :bind
   (:map company-active-map
         ([tab]    . company-complete-common-or-cycle)
   :bind
   (:map company-active-map
         ([tab]    . company-complete-common-or-cycle)
-        ([escape] . company-abort))
+        ([escape] . company-abort)
+        ("C-p"    . company-select-previous-or-abort)
+        ("C-n"    . company-select-next-or-abort))
   :custom
   (company-minimum-prefix-length 1)
   (company-selection-wrap-around t)
   :custom
   (company-minimum-prefix-length 1)
   (company-selection-wrap-around t)
@@ -1774,7 +1778,7 @@ This function is intended for use with `ivy-ignore-buffers'."
        (advice-add 'magit-branch-and-checkout
                    :after #'my-projectile-invalidate-cache)))
   :custom
        (advice-add 'magit-branch-and-checkout
                    :after #'my-projectile-invalidate-cache)))
   :custom
-  ;; (projectile-completion-system 'ivy)
+  (projectile-completion-system 'ivy)
   (projectile-mode-line-prefix " proj"))
 
 (use-package helpful
   (projectile-mode-line-prefix " proj"))
 
 (use-package helpful
@@ -2152,6 +2156,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-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")
                                   ;; *.lists.sr.ht, omitting one dot if present
                                   ;;    add more \\.?\\([^.]*\\) if needed
                                   (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists.sr.ht>.*" "l.~\\1.\\2\\3")
@@ -2485,9 +2491,10 @@ https://csclub.uwaterloo.ca/~abandali")
   :init
   (add-hook 'dired-mode-hook 'gnus-dired-mode))
 
   :init
   (add-hook 'dired-mode-hook 'gnus-dired-mode))
 
-(use-feature gnus-utils
-  :custom
-  (gnus-completing-read-function 'gnus-ido-completing-read))
+(comment
+  (use-feature gnus-utils
+    :custom
+    (gnus-completing-read-function 'gnus-ido-completing-read)))
 
 (use-feature mm-decode
   :config
 
 (use-feature mm-decode
   :config
@@ -2581,47 +2588,59 @@ https://csclub.uwaterloo.ca/~abandali")
         ("r" . footnote-renumber-footnotes)
         ("s" . footnote-set-style)))
 
         ("r" . footnote-renumber-footnotes)
         ("s" . footnote-set-style)))
 
-(use-package ebdb
+(use-package bbdb
   :demand
   :after gnus
   :demand
   :after gnus
-  :bind (:map gnus-group-mode-map ("e" . ebdb))
+  :bind (:map gnus-group-mode-map ("e" . bbdb))
   :config
   :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-package ebdb-message
-;;   :after ebdb)
+  (use-feature ebdb-mua
+    :demand
+    :after ebdb
+    :custom (ebdb-mua-pop-up t))
 
 
-;; (use-package ebdb-vcard
-;;   :after ebdb)
+  ;; (use-package ebdb-message
+  ;;   :after ebdb)
+
+  ;; (use-package ebdb-vcard
+  ;;   :after ebdb)
+  )
 
 (use-package message-x)
 
 
 (use-package message-x)
 
@@ -2697,7 +2716,7 @@ https://csclub.uwaterloo.ca/~abandali")
 (use-feature erc-pcomplete
   :after erc
   :custom
 (use-feature erc-pcomplete
   :after erc
   :custom
-  (erc-pcomplete-nick-postfix ","))
+  (erc-pcomplete-nick-postfix ", "))
 
 (use-feature erc-track
   :after erc
 
 (use-feature erc-track
   :after erc