Generic completion mechanism for Emacs
