Here are some nice name completion related features. The following works in minibuffer.
iswitchb-mode(in emacs 22) → completion for switching buffers or opening files. I used it since 2008.
ido-mode(in emacs 22) → superset of iswitchb-mode for files. The interface is a bit unusual, gets some used to. I started to use ido instead of iswitchb in 2012.
smex→ same as ido, but for command names (
icomplete-mode(in emacs) → 10 years old package, still excellent, complementing the above, especially for
describe-variable, which the above doesn't do. If you really want just basic completion, use this.
I was using
iswitchb-mode in past years.
ido-mode is a enhanced version. The major difference is this:
ido-modewill also show suggestions when opening a file (
ido-modeshow suggestion but also allows you to use arrow keys to navigate it.
Completion for coding:
abbrev-mode(in emacs) → Statically expand pre-defined set of strings. Expansion is automatically on Space or Enter ↵. No fancy interface. Excellent. 〔☛ Using Emacs Abbrev Mode for Abbreviation〕
hippie-expand(in emacs) → Expand any string that occurs in existing buffer. Great. You need to give it a key. 〔☛ Emacs: How to Define Keys〕 Press once to expand. Press again to switch to next choice. Can be used anywhere, including in minibuffer.
auto-completemode. → For expanding keywords in programing languages. When you type, suggestions automatically shows as gray text. Press Enter ↵ to complete. The keywords are from a pre-defined set of files. When in elisp, it also pops a contextual menu with inline-documentation. Excellent.
I use all of the above. Those not bundled in emacs, you can easily install them by ELPA package system. They are in MELPA repository. 〔☛ A Guide on Emacs 24 Package System〕
Here's some other related to completion but i haven't used.
thx to Ba Manzi (杨贵龙)blog comments powered by Disqus