Search view doesn't update matches for Xtext DSL code
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Start with the PositionTracker constructor in bundles/org.eclipse.search/newsearch/org/eclipse/search2/internal/ui/text/PositionTracker.java, especially the lines linked in the issue, and investigate how it tracks edits for files not using ITextFileBufferManager. The issue suggests a resource change listener as a possible direction; done means saving an edited Xtext DSL file updates the Search view to show fewer matches.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Unfortunately I don't have a self containing example at hand, just saw the issue immediately by loking at the PR related to the Search view PositionTracker fix https://github.com/eclipse-platform/eclipse.platform.ui/pull/3802.
I can see it with custom Xtext based application that provides various DSL (text file based) implementations.
- Start Search -> File, make sure the filter matches some DSL files, like "Search for 'a'" text in any DSL file.
- Search view shows those DSL files (OK), highlighting text matches (OK)
- Double click on that file & remove the line with the match, save the file
- Search view is supposed to update the result to show less matches.
- For Xtext based DSL files this doesn't work - because Xtext by default doesn't use
ITextFileBufferManager.
See org.eclipse.search2.internal.ui.text.PositionTracker constructor why this doesn't work:
Of course it would be nice if Xtext would use "common" text file buffers API, but it's obviously design decision which was made several years ago and changing that would be either not possible or breaking existing API/code.
One possible solution on platform UI side would be to add resource change listener in PositionTracker...
See also related issue / proposed workaround in LSP4E https://github.com/eclipse-lsp4e/lsp4e/pull/1501.
- Lingua principale
- Java
- Stelle
- 124
- Fork
- 269
- Merge medio
- 2g 3h
- PR unite (30g)
- 69
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di eclipse-platform/eclipse.platform.ui
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
eclipse-platform/eclipse.platform.ui#4125 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
eclipse-platform/eclipse.platform.ui#4016 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
eclipse-platform/eclipse.platform.ui#3892 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
eclipse-platform/eclipse.platform.ui#2687 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
eclipse-platform/eclipse.platform.ui#4487 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di eclipse-platform/eclipse.platform.ui
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
bug new windows
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
iOS podspec depends on `React-Codegen`, which resolves to an unrelated pod on CocoaPods trunkAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
GantMan/jail-monkey#380 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
objectionary/jucs#145 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
objectionary/lints#1559 ·
I maintainer di solito rispondono entro 2 giorni