Search code examples
emacsautocompletecommon-lispslime

Slime Autocompletion when editing file


I am new to Lisp. I installed LIsp in a box to learn Common Lisp. In the slime-repl I can use autocompletion using the tab key. However I want to do so in other buffers - files - I edit. For instance I want to do the following:

C-x b  ;; Here I switch to the buffer corresponding to my file. S I am not in the repl anymore.
(remove-i  ;; Here I use the tab key, but nothing occurs.

In the repl buffer, I can type (remove-i and I will see matching functions such as remove-if and remove-if-not.

How can I add lisp autocompletion while editing any other file?


Solution

  • C-M-i (translated from <M-tab>) runs the command slime-complete-symbol (found
    in slime-mode-indirect-map), which is an interactive compiled Lisp function in
    ‘slime.el’.
    
    It is bound to C-c TAB, C-M-i, <menu-bar> <SLIME> <Complete Symbol>.
    
    (slime-complete-symbol)
    
    Complete the symbol at point.
    
    Completion is performed by ‘slime-completion-at-point-functions’.
    

    You can bind this function to TAB, if you want.

    Peter