diff --git a/emacs.el b/emacs.el index cd6c192..ce3c61e 100644 --- a/emacs.el +++ b/emacs.el @@ -156,6 +156,7 @@ Otherwize hook it." counsel ivy-prescient + amx ;; Used from counsel editorconfig editorconfig-custom-majormode @@ -2873,7 +2874,11 @@ and search from projectile root (if projectile is available)." (with-eval-after-load 'ivy (defvar ivy-minibuffer-map) (define-key ivy-minibuffer-map (kbd "C-u") - (lambda () (interactive) (delete-region (point-at-bol) (point))))) + (lambda () (interactive) (delete-region (point-at-bol) (point)))) + (defvar ivy-sort-matches-functions-alist) + (add-to-list 'ivy-sort-matches-functions-alist + '(counsel-M-x . ivy--shorter-matches-first)) + ) (set-variable 'ivy-on-del-error-function 'ignore) (when (fboundp 'counsel-M-x) @@ -2912,8 +2917,8 @@ and search from projectile root (if projectile is available)." ;; (ivy-configure 'my-counsel-describe-symbol ;; :sort-fn 'my-ivy-length) (ivy-configure 'counsel-M-x - :initial-input "" - ;; :sort-fn 'my-ivy-length + ;; :initial-input "" + :sort-fn 'ivy-string< ) ) @@ -2928,9 +2933,19 @@ and search from projectile root (if projectile is available)." ;; ivy-prescient requires counsel already loaded (require 'counsel nil t) (when (fboundp 'ivy-prescient-mode) + (set-variable 'prescient-sort-length-enable t) + (set-variable 'prescient-sort-full-matches-first t) + (set-variable 'ivy-prescient-enable-filtering t) + (set-variable 'ivy-prescient-enable-sorting nil) + ;; (set-variable 'ivy-prescient-sort-commands t) (set-variable 'prescient-filter-method - '(literal regexp initialism fuzzy prefix)) - (ivy-prescient-mode 1))) + '(literal prefix literal-prefix regexp initialism fuzzy)) + (when (fboundp 'prescient-persist-mode) + (prescient-persist-mode t)) + (ivy-prescient-mode 1) + ;; (set-variable 'ivy-sort-functions-alist + ;; '((t . ivy-string<))) + )) ;; ?