[slime-devel] Re: three little patches
Gary King
gwking at metabang.com
Fri Mar 17 02:30:02 UTC 2006
Hi,
On Mar 16, 2006, at 12:18 PM, Marco Baringer wrote:
>> 1. Make find-definitions a little more flexible with an around
>> method: if the symbol isn't in the current package, the around method
>> goes on to look in all the packages too. (I haven't added similar
>> logic to symbol completion but will someday).
>
> won't this make (find-definitions foo:test) returns definitions for
> bar:test as well? do we really want this?
I may not have have been clear enough. Let me see if I do better with
an example. Suppose i have two packages foo and bar and a function
named test in each of them. Here are some scenarios:
* I am in package foo and search for test: the regular find-
definitions finds the definition and I jump to foo::test directly.
* I am in package bar and search for test. Again, I jump directly to
bar::test.
* I am in package xxx and search for test. This time, find-
definitions finds nothing so it goes to the around method and finds
two definitions and gives me the choices of foo::test and bar::test.
* I am in package xxx and search for foo::test. Find-definitions
finds the single definition, the around method is not used and i jump
to foo::test.
* I am in package bar and search for foo::test. results are as in
package xxx.
* I am in package xxx and search for foo:test (single #\:). Neither
the regular find-definitions nor the around method finds anything and
i get the "no known definitions" message.
since the around method only fires if the regular finds nothing, it
only changes behavior when the current symbol doesn't have a package
prefix and isn't in the current package...
HTH,
--
Gary Warren King
metabang.com
http://www.metabang.com/
More information about the slime-devel
mailing list