On Thu, 21 Oct 2010 23:16:19 +0200, Sébastien Vauban wrote: > > Hello, > > Before spending a lot of time trying to choose for the "best" completion > mechanism inside Emacs (and sticking to it), setting it up all the way > through, I wanted to know if you had had: > > - particularly good or bad experiences with one of the "standard" ones? I've tried a number over the years. I've yet to reach a situation where I am particularly happy with any of them but the one that seems to work best *for me* so far is hippie. I have the following settings (having just added Tassilo's expansion function for calc which is brilliant!): --8<---------------cut here---------------start------------->8--- (setq hippie-expand-try-functions-list '(;;yas/hippie-try-expand th/my-try-complete-with-calc-result try-expand-all-abbrevs try-expand-dabbrev try-expand-dabbrev-all-buffers try-expand-dabbrev-from-kill try-complete-file-name try-complete-lisp-symbol)) --8<---------------cut here---------------end--------------->8--- I no longer use yasnippets as they interfered too much with completion in general. I have bound hippie-expand to C-; as I find this a lot easier to type than M-/. I also have TAB bound to the following: --8<---------------cut here---------------start------------->8--- (defun esf/indent-or-expand (arg) "Either indent according to mode, or expand the word preceding point." (interactive "*P") (if (and (or (bobp) (= ?w (char-syntax (char-before)))) (or (eobp) (not (= ?w (char-syntax (char-after)))))) ;;(dabbrev-expand arg) (hippie-expand arg) (indent-according-to-mode))) --8<---------------cut here---------------end--------------->8--- in most text buffers. This means that TAB no longer does what it should in org mode but I use C-i for that functionality as most of the time I am typing text and not moving things around. HTH, eric