(use-feature vc
:bind ("C-x v C-=" . vc-ediff))
+(use-feature vc-git
+ :after vc
+ :custom
+ (vc-git-print-log-follow t))
+
(use-feature ediff
:config (add-hook 'ediff-after-quit-hook-internal 'winner-undo)
:custom ((ediff-window-setup-function 'ediff-setup-windows-plain)
("<mouse-9>" . next-buffer)
("<drag-mouse-9>" . next-buffer)
("<drag-mouse-2>" . kill-this-buffer)
- ("<drag-mouse-3>" . ivy-switch-buffer))
+ ("<drag-mouse-3>" . switch-to-buffer))
(bind-keys
:prefix-map b/straight-prefix-map
:custom
(magit-diff-refine-hunk t)
(magit-display-buffer-function #'magit-display-buffer-fullframe-status-v1)
+ (magit-completing-read-function 'magit-ido-completing-read)
:custom-face (magit-diff-file-heading ((t (:weight normal)))))
;; recently opened files
:defer 0.2
;; :config
;; (add-to-list 'recentf-exclude "^/\\(?:ssh\\|su\\|sudo\\)?:")
+ :config
+ (recentf-mode)
:custom
(recentf-max-saved-items 2000))
;; smart M-x enhancement (needed by counsel for history)
-(use-package smex)
+;; (use-package smex)
+
+(bind-keys
+ ("C-c f ." . find-file)
+ ("C-c f l" . find-library)
+ ("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))
+
+(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 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
+ :disabled
:defer 0.3
:bind
(:map ivy-minibuffer-map
)
(use-package swiper
- :after ivy
- :bind (("C-s" . swiper-isearch)
- ("C-r" . swiper)
- ("C-S-s" . isearch-forward)))
+ :commands (swiper swiper-isearch)
+ :bind (;; ("C-s" . swiper-isearch)
+ ;; ("C-r" . swiper)
+ ("C-S-s" . swiper-isearch)))
(use-package counsel
- :after ivy
- :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))
+ :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)
+ ;; )
(comment
(use-package helm
("C-d" . b/eshell-quit-or-delete-char)
("C-S-l" . b/eshell-clear)
("M-r" . counsel-esh-history)
- ([tab] . company-complete)))
+ ;; ([tab] . company-complete)
+ ))
:hook (eshell-mode . b/eshell-setup)
:custom
(company-dabbrev-char-regexp "\\sw\\|\\s_\\|[-_]")
(company-dabbrev-downcase nil)
(company-dabbrev-ignore-case nil)
- :config
- (global-company-mode t))
+ ;; :config
+ ;; (global-company-mode t)
+ )
(use-package flycheck
:defer 0.6
(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
"^User-Agent:"
"^X-detected-operating-system:"
"^Message-ID:"
- "^References:"
+ ;; "^References:"
"^List-Id:"
"^Gnus-Warning:")
gnus-visible-headers (mapconcat 'identity
:init
(add-hook 'dired-mode-hook 'gnus-dired-mode))
+(use-feature gnus-utils
+ :custom
+ (gnus-completing-read-function 'gnus-ido-completing-read))
+
(use-feature mm-decode
:config
(setq mm-discouraged-alternatives '("text/html" "text/richtext")
'(gnus-find-subscribed-addresses)
message-dont-reply-to-names
"\\(\\(\\(amin\\|mab\\)@shemshak\\.org\\)\\|\\(.*@aminb\\.org\\)\\|\\(\\(bandali\\|mab\\|aminb?\\)@gnu\\.org\\)\\|\\(a?bandali@\\(csclub\\.\\)?uwaterloo\\.ca\\)\\)")
- (require 'company-ebdb)
+ ;; (require 'company-ebdb)
:hook (;; (message-setup . mml-secure-message-sign-pgpmime)
(message-mode . flyspell-mode)
(message-mode . (lambda ()
(use-feature ebdb-com
:after ebdb)
-;; (use-package ebdb-complete
-;; :after ebdb
-;; :config
-;; (ebdb-complete-enable))
-
-(use-package company-ebdb
+(use-feature ebdb-complete
+ :after ebdb
:config
- (defun company-ebdb--post-complete (_) nil))
+ ;; (setq ebdb-complete-mail 'capf)
+ (ebdb-complete-enable))
+
+(use-feature ebdb-message
+ :demand
+ :after ebdb)
+
+;; (use-package company-ebdb
+;; :config
+;; (defun company-ebdb--post-complete (_) nil))
(use-feature ebdb-gnus
:after ebdb