Zsh like completion system for Emacs.
From package.el with MELPA repository,
M-x package-install zlc
Or you can just put zlc.el in your load path somewhere.
Then, put the following lines into you emacs config.
(require 'zlc) (zlc-mode t)
To simulate zsh's `menu select', zlc arranges movement commands for 4 directions. If you want to use these commands, bind them to certain keys in your emacs config.
(let ((map minibuffer-local-map)) ;;; like menu select (define-key map (kbd "<down>") 'zlc-select-next-vertical) (define-key map (kbd "<up>") 'zlc-select-previous-vertical) (define-key map (kbd "<right>") 'zlc-select-next) (define-key map (kbd "<left>") 'zlc-select-previous) ;;; reset selection (define-key map (kbd "C-c") 'zlc-reset) )
If you want zlc to select completion immediately when Completions buffer is created,
set non-Nil value to the
(setq zlc-select-completion-immediately t)
You can customize the style of the selected item in the Completions buffer.
To change style,
M-x customize-face and input