aboutsummaryrefslogtreecommitdiff
path: root/Doom/.config/doom/modules
diff options
context:
space:
mode:
Diffstat (limited to 'Doom/.config/doom/modules')
-rw-r--r--Doom/.config/doom/modules/private/completion/config.el63
-rw-r--r--Doom/.config/doom/modules/private/completion/packages.el8
2 files changed, 52 insertions, 19 deletions
diff --git a/Doom/.config/doom/modules/private/completion/config.el b/Doom/.config/doom/modules/private/completion/config.el
index 29d1ee1..58a5467 100644
--- a/Doom/.config/doom/modules/private/completion/config.el
+++ b/Doom/.config/doom/modules/private/completion/config.el
@@ -1,21 +1,46 @@
;;; private/completion/config.el -*- lexical-binding: t; -*-
-(map!
- :map icomplete-minibuffer-map
- ;; unbind anything I want to use for useful stuff
- "C-j" nil
- "C-k" nil
- "C-b" nil
- "TAB" nil
-
- "C-j" #'icomplete-forward-completions
- "C-k" #'icomplete-backward-completions
- "C-n" #'icomplete-forward-completions
- "C-p" #'icomplete-backward-completions
- "TAB" #'icomplete-force-complete
- "C-b" #'completions)
-
-(setq icomplete-separator "\t|\t")
-(setq icomplete-in-buffer t)
-
-(add-hook 'doom-first-input-hook #'icomplete-mode)
+(use-package! ido
+ :hook (doom-first-input . ido-mode)
+ :hook (ido-mode . recentf-mode)
+ :hook (ido-mode . ido-everywhere)
+ :hook (ido-mode . ido-ubiquitous-mode)
+
+ :preface
+ (defadvice! +ido-run-hooks-a (&rest _)
+ :after #'ido-mode
+ (run-hooks 'ido-mode-hook))
+
+ :init
+ (setq ido-save-directory-list-file nil)
+ (setq ido-save-directory-list-file nil)
+ (setq ido-ignore-buffers '("\\` " "^\\*ESS\\*" "^\\*[Hh]elp" "^\\*.*Completions\\*$" "^\\*tramp" "^\\*cvs-" "^*Ido"))
+ (setq ido-separator "\n")
+
+ :config
+ (defun +completion/recentf()
+ (interactive)
+ (find-file (completing-read "Recentf: " recentf-list)))
+ (define-key!
+ [remap recentf-open-files] #'+completion/recentf)
+ (map!
+ :map (ido-common-completion-map ido-file-completion-map ido-buffer-completion-map)
+ "C-k" #'ido-prev-match
+ "C-j" #'ido-next-match
+ "TAB" #'ido-exit-minibuffer
+ :map ido-file-completion-map
+ "~" (cmd! (if (looking-back "/" (point-min))
+ (insert "~/")
+ (call-interactively #'self-insert-command)))))
+
+
+(use-package! ido-sort-mtime
+ :hook (ido-mode . ido-sort-mtime-mode))
+
+
+(use-package! crm-custom
+ :hook (ido-mode . crm-custom-mode))
+
+
+(use-package! flx-ido
+ :hook (ido-mode . flx-ido-mode))
diff --git a/Doom/.config/doom/modules/private/completion/packages.el b/Doom/.config/doom/modules/private/completion/packages.el
new file mode 100644
index 0000000..39f4472
--- /dev/null
+++ b/Doom/.config/doom/modules/private/completion/packages.el
@@ -0,0 +1,8 @@
+;; -*- no-byte-compile: t; -*-
+;;; private/completion/packages.el
+
+
+(package! flx-ido)
+(package! ido-completing-read+)
+(package! ido-sort-mtime)
+(package! crm-custom)