-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Improve LSP Install UX #2101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Improve LSP Install UX #2101
Conversation
Looks great! I wonder if we don't open this details sheet by default. Maybe it can be opened during/after installation for more details? We would still show simple progress similar to installing an app from the App Store. What are your thoughts? |
That's a great idea. Then does the 'install' button change to a 'details' button? |
Or is it "Install" to a second "Install" button in the details page |
@austincondiff thoughts on this UI/UX? I like the implied confirm step after clicking install, and the chance to show a little more information before installing. Screen.Recording.2025-08-18.at.1.46.07.PM.mov |
In my opinion it is too disruptive. Imagine the use-case. User comes in and thinks, "I use JavaScript, TypeScript, Rust, Python, and Swift." Option A (the on in your video)
OR Option B
If the user cares to see more details, they can click the circle "i" symbol next to the install button. Maybe this info icon is there regardless of whether install has started or not. That way users can get more details before installing. Similar to the App Store. |
That sounds like a good compromise. Install button initiates install immediately, info button presents the same view but doesn't start installing. |
Well wait, to be fair we're still forcing the longer UX because we want to make sure we're not running willy nilly running commands on the user's machine. So no matter what the UX is this for each language.
|
Also a heads up, we may want to fork the mason repository in the future or see if they'd be interested in extending it. Right now there's no way to indicate that a package could be found on a user's machine without installing. Swift and Rust are good cases of that, where the language bundles the server executable in the tooling. For that reason Swift isn't in the Mason registry (you can't really install SourceKitLSP without the Swift toolchain) |
Description
Implements an installing progress view for language servers from the mason registry.
Related Issues
Checklist
Screenshots
Screen.Recording.2025-08-18.at.2.16.53.PM.mov