GNU bug report logs -
#36967
27.0.50; Duplicate lines in xref output
Previous Next
Reported by: Juri Linkov <juri <at> linkov.net>
Date: Wed, 7 Aug 2019 22:04:01 UTC
Severity: normal
Merged with 43715
Found in versions 27.0.50, 28.0.50
Fixed in version 28.1
Done: Dmitry Gutov <dgutov <at> yandex.ru>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
>> Here is the patch that makes the broken
>
> Pretty harsh there.
But true: I can't use it in the current form, and was waiting
when someone will fix it.
>> project-find-regexp usable:
>
> Downside: xref-query-replace-in-results won't work in those cases anymore;
> it will only replace one match. Because the list only contains one
> location, and not all of them. And that command is pretty nice to have.
Sorry, I missed this use case because I still know too little about details
of xref.el.
> Here's an alternative proposal:
>
> Combine the lines inside the rendering code instead.
>
> So each xref will have a separate location, but then xref--insert-xrefs
> will see that xref-location-line value repeats across some consecutive
> locations, and will combine them into single line with some text property
> magic (basically, copying the summary from one of them, and then applying
> 'xref-item and 'face properties appropriately). This retains the xref item
> semantics (as opposed to, say, associating an xref item with multiple
> locations). And _hopefully_ the replace-related code won't need
> any changes.
I tried to improve xref--insert-xrefs to group matches by lines
by using the most convenient function seq-group-by. But then
noticed that xref.el doesn't rely on seq.el. Even xref--alistify
that groups matches by files could be replaced by seq-group-by.
Is it a requirement to avoid using seq functions in xref.el?
This bug report was last modified 4 years and 208 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.