Next: , Previous: Programming Helpers, Up: Programming Helpers



3.2.5.1 Completion
M-TAB
slime-complete-symbol
Complete the symbol at point. Note that three styles of completion are available in SLIME, and the default differs from normal Emacs completion. See Emacs-side customization.


C-c M-i
slime-fuzzy-complete-symbol
Presents a list of likely completions to choose from for an abbreviation at point. This is a third completion method and it is very different from the more traditional completion to which slime-complete-symbol defaults. It attempts to complete a symbol all at once, instead of in pieces. For example, “mvb” will find “multiple-value-bind” and “norm-df” will find “least-positive-normalized-double-float”. This can also be selected as the method of completion used for slime-complete-symbol.
C-c C-s
slime-complete-form
Looks up and inserts into the current buffer the argument list for the function at point, if there is one. More generally, the command completes an incomplete form with a template for the missing arguments. There is special code for discovering extra keywords of generic functions and for handling make-instance and defmethod. Examples:
          (subseq "abc" <C-c C-s>
            --inserts--> start [end])
          (find 17 <C-c C-s>
            --inserts--> sequence :from-end from-end :test test
                         :test-not test-not :start start :end end
                         :key key)
          (find 17 '(17 18 19) :test #'= <C-c C-s>
            --inserts--> :from-end from-end
                         :test-not test-not :start start :end end
                         :key key)
          (defclass foo () ((bar :initarg :bar)))
          (defmethod print-object <C-c C-s>
            --inserts-->   (object stream)
                         body...)
          (defmethod initialize-instance :after ((object foo) &key blub))
          (make-instance 'foo <C-c C-s>
            --inserts--> :bar bar :blub blub initargs...)