[slime-devel] Daily ChangeLog diff
Tobias C. Rittweiler
tcr at freebits.de
Thu Apr 15 09:22:43 UTC 2010
Mark Harig <idirectscm at aim.com> writes:
>> >
>> >> Index: slime/ChangeLog
>> >> diff -u slime/ChangeLog:1.2057 slime/ChangeLog:1.2061
>> >> --- slime/ChangeLog:1.2057 Mon Apr 5 23:05:25 2010
>> >> +++ slime/ChangeLog Mon Apr 12 14:51:10 2010
>> >> @@ -1,3 +1,19 @@
>> >> +2010-04-12 Helmut Eller <heller at common-lisp.net>
>> >> +
>> >> + * slime.el (slime-doc-bindings): Restore key for slime-apropos.
>> >> +
>> >>
>> >> Here is a patch for 'doc/slime.texi', revision 1.100, that reverts
>> >> the documentation for `C-c C-d a' and `C-c C-d A' to match your
>> >> reversion of the key bindings.
>> >
>> > Any ideas where I can place key bindings for slime-autodoc-manually?
>> > C-c C-d A doesn't look convenient.
>>
>> C-c C-d s (for "signature") would be free. slime-describe-function
>> and slime-describe-symbol could probably be merged into one command
>> to free up C-c C-d f.
>
>
> Looking over the key bindings for SLIME documentation commands, I
> would select C-c C-d m for `slime-autodoc-manually'. There is not a
> single rule for deciding this, and so it doesn't matter much if you do
> not choose the same key binding as my suggestion (that is, you
> wouldn't be breaking a convention).
>
> Here are the "rules" that are being used:
>
> 1. Use the first letter of the third word in the function name:
>
> `slime-describe-function' is mapped to C-c C-d f
> `slime-apropos-package' is mapped to C-c C-d p
>
> 2. Use the first letter of the second word in the function name:
>
> `slime-apropos' is mapped to C-c C-d a
> `slime-describe-symbol' is mapped to C-c C-d d
> `slime-hyperspec-lookup' is mapped to C-c C-d h
>
> 3. Use a character suggested by Common Lisp usage:
>
> `hyperspec-lookup-format' is mapped to C-c C-d ~
> `hyperspec-lookup-reader-macro' is mapped to C-c C-d #
>
> 4. Use a non-mnemonic, but-as-yet-unused letter:
>
> `slime-apropos-all' is mapped to C-c C-d z
>
> So, because there is no single convention, my suggestion is that SLIME
> not create yet more "rules" but attempt to conform to one of the ones
> used already (preferably not rule 4, except as a last resort).
There's
`slime-echo-arglist' in slime.el (currently not interactive),
`slime-arglist' in contrib/slime-autodoc.el
`slime-autodoc-manually' in contrib/slime-autodoc.el.
They're all there pretty much for the same thing.
I suggest:
a) make `slime-echo-arglist' interactive.
b) get rid of `slime-arglist', and `slime-autodoc-manually'
use the mechanism of `slime-echo-arglist-function' instead. If
possible---see below.
c) bind `slime-echo-arglist' to `C-c C-d e'
It may be somehwat tricky to massage the interplay between background
autodoc, and explicit autodoc (via `slime-space', or
`slime-echo-arglist') to the desired behaviour:
If an arglist is displayed already, and the user explicitly calls `C-c
C-d e', the whole (that is untrimmed) arglist should get displayed.
However that should probably not happen with SPC.
I don't have the time, but Stas may be able to cook it.
-T.
More information about the slime-devel
mailing list