onivim / oni

Oni: Modern Modal Editing - powered by Neovim
https://www.onivim.io
MIT License
11.35k stars 299 forks source link

De-deduplicate completion items + improve sorting #2638

Closed feltech closed 5 years ago

feltech commented 5 years ago
feltech commented 5 years ago

The main motivation for this PR was to remove the duplicates coming back from cquery.

However, I found that the sort order of results was odd (which makes filtering duplicates more expensive, and just looks strange). Perhaps they make some sense straight from the language server, but Oni then filters as the user types, so retaining the sort order from the language server makes even less sense.

Hence why I thought it reasonable to "fix" the sort order for filtered completions.

codecov[bot] commented 5 years ago

Codecov Report

Merging #2638 into master will increase coverage by 0.07%. The diff coverage is 88.23%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2638      +/-   ##
==========================================
+ Coverage   45.43%   45.51%   +0.07%     
==========================================
  Files         361      361              
  Lines       14563    14591      +28     
  Branches     1912     1919       +7     
==========================================
+ Hits         6617     6641      +24     
- Misses       7721     7723       +2     
- Partials      225      227       +2
Impacted Files Coverage Δ
...ser/src/Services/Completion/CompletionSelectors.ts 76.56% <88.23%> (+7.11%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 2ae1224...4ef58f9. Read the comment docs.