[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Generalizing find-definition
From: |
Stephen Leake |
Subject: |
Re: Generalizing find-definition |
Date: |
Thu, 04 Dec 2014 10:19:58 -0600 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.94 (windows-nt) |
Helmut Eller <address@hidden> writes:
> On Wed, Dec 03 2014, Stephen Leake wrote:
>
> [...]
>> A couple comments:
>>
>> The current copyright on xref.el is Helmut Eller; I assume you've got a
>> copyright assignment on file.
>
> Yes, I have the paperwork.
>
>> I'd like to add to xref.el:
>>
>> (defun xref-find-definition-at-point ()
>> (interactive)
>> (xref--find-definition (xref-identifier-at-point (xref--backend)) nil))
>>
>> That's the function I use most often.
>
> Hmm, xref-find-definition does this, except for the case when it's not
> called interactively.
I bound xref-find-definition to a key. When I invoke that key, I'm
prompted for the identifier; the default is the identifier at point, but
I still have to hit enter. I want to eliminate that prompt/enter step.
Currently in ada-mode, C-c C-d gives the non-prompt identifier at point
behavior; that makes it very fluid to drill down thru several layers of
calls.
> Do you need the non-interactive version? Maybe
> it would be better to make xref-find-definition more useful
> non-interactively than to define an almost identical function.
I think xref-find-definition is fine as is; you can call it
interactively to be prompted with completion, or programmatically and
pass it an identifier. But that misses the interactive non-prompt case.
We could use C-u or some other prefix to control that, but a separate
function is easier to bind to a key.
>> There is a FIXME on xref-push-marker-stack. I gather you'd like this to
>> be independent of etags?
>>
>> It would not be hard to implement an independent marker ring/stack. But
>> I think it makes more sense to use the etags marker ring; that way,
>> if I am navigating thru code that uses multiple languages, and one
>> language mode uses xref while another uses tags, there is still only one
>> tag ring.
>>
>> Eventually, when most modes have migrated to xref, it might make sense
>> to switch to a separate marker ring.
>
> My idea was to move the ring from etags.el to xref.el and perhaps define
> some aliases for backward compatibility.
+1
--
-- Stephe
- Re: Generalizing find-definition, Helmut Eller, 2014/12/01
- Re: Generalizing find-definition, Stephen Leake, 2014/12/03
- Re: Generalizing find-definition, Stephen Leake, 2014/12/04
- Re: Generalizing find-definition, Helmut Eller, 2014/12/04
- Re: Generalizing find-definition,
Stephen Leake <=
- Re: Generalizing find-definition, Helmut Eller, 2014/12/04
- Re: Generalizing find-definition, Stephen Leake, 2014/12/05
- Re: Generalizing find-definition, Helmut Eller, 2014/12/05
- Re: Generalizing find-definition, Stephen Leake, 2014/12/05
- Re: Generalizing find-definition, Helmut Eller, 2014/12/06
- Re: Generalizing find-definition, Stephen Leake, 2014/12/06
- RE: Generalizing find-definition, Drew Adams, 2014/12/06
- Re: Generalizing find-definition, Stephen Leake, 2014/12/07
- Re: Generalizing find-definition, Stefan Monnier, 2014/12/06
- Re: Generalizing find-definition, Helmut Eller, 2014/12/07