;;; init-icomplete.el --- Initialize Icomplete -*- lexical-binding: t -*- ;;; Commentary: ;; https://www.gnu.org/software/emacs/manual/html_node/emacs/Icomplete.html ;; https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/icomplete.el ;;; Code: (require 'icomplete) (keymap-global-set "C-S-o" #'my-find-file-no-icomplete) (keymap-set icomplete-minibuffer-map "" #'icomplete-backward-completions) (keymap-set icomplete-minibuffer-map "" #'icomplete-forward-completions) (keymap-set icomplete-minibuffer-map "RET" #'icomplete-fido-ret) (setq icomplete-compute-delay 0) (setq icomplete-delay-completions-threshold 9999) (setq icomplete-hide-common-prefix nil) (setq icomplete-max-delay-chars 0) (setq icomplete-prospects-height 1) (setq icomplete-show-matches-on-no-input t) (setq icomplete-separator " ") (icomplete-mode 1) (defun my-find-file-no-icomplete () "Find a file to visit without using Icomplete." (interactive) (icomplete-mode -1) (ignore-error quit (call-interactively #'find-file)) (icomplete-mode 1)) (defun my-rename-file-no-icomplete () "Rename the current file without using Icomplete." (interactive) (icomplete-mode -1) (ignore-error quit (call-interactively #'rename-visited-file)) (icomplete-mode 1)) (provide 'init-icomplete) ;;; init-icomplete.el ends here