Hello slime-devels,
I'd like to propose the following changes/additions to `slime-space' around `slime-echo-arglist'. As best I can gather these provide the quickest path to toggling the verbosity of `slime-space's invocation of `slime-echo-arglist' (which I find too distracting at times).
I'd also like to suggest that various of slime-autodoc's variables be made permanent-local. AFAICT the emacs-devels (esp. their fearless leader) are increasingly less adverse to judicious use of and apportioning of permanent buffer-locals and as such Slime could be making better use of permanent-locals as well :)
-- /s_P\
;;; ============================== ;;; :CREATED <Timestamp: #{2010-10-31T16:15:03-04:00Z}#{10437} - by MON> (defvar *slime-echo-arglist-STFU* nil "When non-nil `slime-space' won't invoke `slime-echo-arglist' verbosely.\n `slime-echo-arglist-behave-or-back-to-your-cage' toggles `slime-echo-arglist' back on, and `slime-echo-arglist-STFU' shuts it up again.\n Evaluate `slime-show-arglist' explicitly if an arglist is needed.\n :SEE-ALSO `slime-echo-arglist-function'.\n►►►") ;; (make-variable-buffer-local '*slime-echo-arglist-STFU*) (put '*slime-echo-arglist-STFU* 'permanent-local t) (set-default '*slime-echo-arglist-STFU* nil)
(defun slime-echo-arglist-behave-or-back-to-your-cage () "De-gimpify `slime-space's and allow `slime-echo-arglist' in current-buffer.\n Evaluate `slime-echo-arglist-STFU' to tone down the minibuffer noise.\n :SEE ALSO `*slime-echo-arglist-STFU*', `slime-echo-arglist-function'.\n►►►" (interactive) (with-current-buffer (current-buffer) (set (make-local-variable 'slime-echo-arglist-STFU) nil)))
(defun slime-echo-arglist-STFU () "Silence `slime-space's invocation of `slime-echo-arglist' in current-buffer.\n Evaluate `slime-echo-arglist-behave-or-back-to-your-cage' to turn it back on.\n Evaluate `slime-show-arglist' explicitly if an arglist is needed. :SEE-ALSO `*slime-echo-arglist-STFU*', `slime-echo-arglist-function'.\n►►►" (interactive) (with-current-buffer (current-buffer) (set (make-local-variable 'slime-echo-arglist-STFU) t)))
(defun slime-space (n) (interactive "p") (self-insert-command n) (when (and (not *slime-echo-arglist-STFU*) ;; <- redefined here. (slime-background-activities-enabled-p)) (slime-echo-arglist)))
(defun slime-space (n) "Insert a space and print some relevant information (function arglist). Designed to be bound to the SPC key. Prefix argument can be used to insert more than one space." (interactive "p") (self-insert-command n) (when (and (not *slime-echo-arglist-STFU*) ;; <- redefined here. (slime-background-activities-enabled-p)) (slime-echo-arglist)))