godotengine / godotengine/godot-vscode-plugin
Make completion list sorting match the built-in godot order
- Dominant language
- TypeScript
- Stars
- 2.1k
- Forks
- 257
- PR merge metrics
- No merged PRs in 30d
Description
### Godot version
4.7
### VS Code version
1.125
### Godot Tools VS Code extension version
2.7.1
### System information
Windows 11
### Problem statement
The completion list is my one gripe when using the vscode extension over the built in godot editor.
VScode's default alphabetical sorting means the same functions and attributes which are common to most classes will be first on the list, so the auto complete loses some of it's efficacy.
### The current extension ordering vs. godot's version:
### Proposed solution
I wrote this issue in this repository although I am not 100% certain if it is a client-side or server-side LSP issue, so I would appreciate any corrections.
From what I could gather, GDCompletionProvider is currently unused in the code, and the default provider behavior is being used instead, but I won't pretend to know enough about this codebase or extensions to know what the proper solution would be.
Here is how it would look if the completion items were shown in the order they are recieved from the LSP:
(I did this with a hacky fix incrementing the sortText of each item directly in the languageserver module, just as a hotfix for my own use)
Contributor guide
Research direction
Start by reading the referenced GDCompletionProvider and the languageserver module to trace where completion items receive their ordering. Compare the existing LSP response order with VS Code's displayed order, then verify that the completion list follows Godot's ordering without losing completion functionality.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- godot, typescript, vscode
- Domain
- developer-experience, tooling
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100