8000 Make CDT LSP editor more visible and easier to onboard in CDT 12 · Issue #968 · eclipse-cdt/cdt · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Make CDT LSP editor more visible and easier to onboard in CDT 12 #968

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

Closed
jonahgraham opened this issue Dec 13, 2024 · 1 comment · Fixed by eclipse-cdt/cdt-lsp#421
Closed
Labels
editor The CDT C/C++, Assembly, Makefile and other editors provided by CDT noteworthy Pull requests and fixed issues that should be highlighted to users
Milestone

Comments

@jonahgraham
Copy link
Member
jonahgraham commented Dec 13, 2024

The goal is for CDT users to have a way to easily try out the CDT-LSP feature and start to transition their workflows to the long term CDT implementation.

Make CDT LSP visible in the following ways:

  1. Add to the top of the CEditor a button(s) that says "Try LSP"
  2. Add to the top of the LSP Editor a button(s) that says "go back to normal CEditor"
  3. Add "Quick-fix" on CEditor errors to say "Try LSP" - See Add "Switch to using C/C++ Editor (LSP)" to quick fix of Codan/parser cdt-lsp#379

More details on 1 and 2:

Contribute a banner to the CEditor and CLspEditor to promote the new C/C++ editing experience based on LSP. The banner in CEditor enables a quick switch to the LSP editor:

image

And in the CLspEditor it enables a quick switch back to the traditional CEditor.

image

If there is no project specific setting for prefer_lsp a quick confirmation dialog is displayed with options for help and feedback:

image

and the other way:

image

If the editor is open on a specific project and that project has project specific preferences for prefer_lsp, instead of automatically changing the setting, the property page is opened:

image

A notification (typically in the bottom right of the IDE) is also displayed to the user offering more information and access to the preferences.

image

In dark mode the banner looks like this:

Image

And the notification (typically in the bottom right of the IDE) looks like this:

Image

@jonahgraham jonahgraham added build Build components of CDT, anything to do with running the compiler, using Make, CMake, or any builder noteworthy Pull requests and fixed issues that should be highlighted to users labels Dec 13, 2024
@jonahgraham jonahgraham added this to the 12.0.0 M1 milestone Dec 13, 2024
@jonahgraham jonahgraham added editor The CDT C/C++, Assembly, Makefile and other editors provided by CDT and removed build Build components of CDT, anything to do with running the compiler, using Make, CMake, or any builder labels Dec 13, 2024
@jonahgraham jonahgraham modified the milestones: 12.0.0 M1, 12.0.0 M2 Jan 15, 2025
@jonahgraham jonahgraham modified the milestones: 12.0.0 M2, 12.0.0 M3 Jan 30, 2025
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Feb 16, 2025
jonahgraham added a commit to jonahgraham/eclipse-cdt-lsp that referenced this issue Feb 17, 2025
Contribute a banner to the CEditor and CLspEditor to promote the
new C/C++ editing experience based on LSP. The banner in CEditor
enables a quick switch to the LSP editor, and in the CLspEditor
it enables a quick switch back to the traditional CEditor.

If the editor is open on a specific project and that project
has project specific preferences for prefer_lsp, instead of
automatically changing the setting, the property page is opened.

TODO:

- [ ] Externalize strings (and change problem severity back to warning)
- [ ] Add preference to disable the banners in the editors
- [ ] New help page and update TRY_LSP_HELP_PATH
- [ ] Fix background re-opened editors after restart

Requires eclipse-cdt/cdt#1088

Fixes eclipse-cdt/cdt#968
jonahgraham added a commit to jonahgraham/eclipse-cdt-lsp that referenced this issue Feb 17, 2025
Contribute a banner to the CEditor and CLspEditor to promote
the new C/C++ editing experience based on LSP. The banner in
CEditor enables a quick switch to the LSP editor:

![image](https://github.com/user-attachments/assets/777c0f8f-1d04-4a90-ab9c-f4e69a7fa929)

And in the CLspEditor it enables a quick switch back to the
traditional CEditor.

![image](https://github.com/user-attachments/assets/91b58306-a1dc-470f-8362-607876ead08c)

If there is no project specific setting for `prefer_lsp` a
quick confirmation dialog is displayed with options for help
and feedback:

![image](https://github.com/user-attachments/assets/7c33d4fe-69a8-4cf8-b1fb-7ca80e07020c)

and the other way:

![image](https://github.com/user-attachments/assets/a69a87d8-4f32-4e58-a651-2583db50183e)

If the editor is open on a specific project and that project
has project specific preferences for `prefer_lsp`, instead of
automatically changing the setting, the property page is opened:

![image](https://github.com/user-attachments/assets/16c2ce3b-5b62-4199-8392-5d6800f621c7)

A notification is also displayed to the user offering more
information and access to the preferences.

![image](https://github.com/user-attachments/assets/e8d069de-0939-4503-8755-a130595570d0)

TODO:

- [ ] Externalize strings (and change problem severity back to warning)
- [ ] Add preference to disable the banners in the editors and connect
      the close banner to it.
- [ ] If ConfigurationVisibility.showPreferLsp() returns false the
      banner won't be shown
- [ ] New help page and update TRY_LSP_HELP_PATH
- [ ] Fix background re-opened editors after restart. The non-activated
      editors are not saving their setting fully, so after reopening
      an error editor appears if it becomes activated

Requires eclipse-cdt/cdt#1088

Fixes eclipse-cdt/cdt#968
@jonahgraham jonahgraham changed the title Make CDT LSP editor the default editor for new projects starting in CDT 12 Make CDT LSP editor more visible and easier to onboard in CDT 12 Feb 17, 2025
@jonahgraham

This comment has been minimized.

jonahgraham added a commit to jonahgraham/eclipse-cdt-lsp that referenced this issue Feb 18, 2025
Contribute a banner to the CEditor and CLspEditor to promote
the new C/C++ editing experience based on LSP. The banner in
CEditor enables a quick switch to the LSP editor:

![image](https://github.com/user-attachments/assets/777c0f8f-1d04-4a90-ab9c-f4e69a7fa929)

And in the CLspEditor it enables a quick switch back to the
traditional CEditor.

![image](https://github.com/user-attachments/assets/91b58306-a1dc-470f-8362-607876ead08c)

If there is no project specific setting for `prefer_lsp` a
quick confirmation dialog is displayed with options for help
and feedback:

![image](https://github.com/user-attachments/assets/7c33d4fe-69a8-4cf8-b1fb-7ca80e07020c)

and the other way:

![image](https://github.com/user-attachments/assets/a69a87d8-4f32-4e58-a651-2583db50183e)

If the editor is open on a specific project and that project
has project specific preferences for `prefer_lsp`, instead of
automatically changing the setting, the property page is opened:

![image](https://github.com/user-attachments/assets/16c2ce3b-5b62-4199-8392-5d6800f621c7)

A notification is also displayed to the user offering more
information and access to the preferences.

![image](https://github.com/user-attachments/assets/e8d069de-0939-4503-8755-a130595570d0)

TODO:

- [ ] Externalize strings (and change problem severity back to warning)
- [ ] Add preference to disable the banners in the editors and connect
      the close banner to it.
- [ ] If ConfigurationVisibility.showPreferLsp() returns false the
      banner won't be shown
- [ ] New help page and update TRY_LSP_HELP_PATH
- [ ] Fix background re-opened editors after restart. The non-activated
      editors are not saving their setting fully, so after reopening
      an error editor appears if it becomes activated

Requires eclipse-cdt/cdt#1088

Fixes eclipse-cdt/cdt#968
jonahgraham added a commit to jonahgraham/eclipse-cdt-lsp that referenced this issue Feb 19, 2025
Contribute a banner to the CEditor and CLspEditor to promote
the new C/C++ editing experience based on LSP. The banner in
CEditor enables a quick switch to the LSP editor:

![image](https://github.com/user-attachments/assets/777c0f8f-1d04-4a90-ab9c-f4e69a7fa929)

And in the CLspEditor it enables a quick switch back to the
traditional CEditor.

![image](https://github.com/user-attachments/assets/91b58306-a1dc-470f-8362-607876ead08c)

If there is no project specific setting for `prefer_lsp` a
quick confirmation dialog is displayed with options for help
and feedback:

![image](https://github.com/user-attachments/assets/7c33d4fe-69a8-4cf8-b1fb-7ca80e07020c)

and the other way:

![image](https://github.com/user-attachments/assets/a69a87d8-4f32-4e58-a651-2583db50183e)

If the editor is open on a specific project and that project
has project specific preferences for `prefer_lsp`, instead of
automatically changing the setting, the property page is opened:

![image](https://github.com/user-attachments/assets/16c2ce3b-5b62-4199-8392-5d6800f621c7)

A notification is also displayed to the user offering more
information and access to the preferences.

![image](https://github.com/user-attachments/assets/e8d069de-0939-4503-8755-a130595570d0)

Fixes eclipse-cdt/cdt#968
jonahgraham added a commit to jonahgraham/eclipse-cdt-lsp that referenced this issue Feb 19, 2025
Contribute a banner to the CEditor and CLspEditor to promote
the new C/C++ editing experience based on LSP. The banner in
CEditor enables a quick switch to the LSP editor:

![image](https://github.com/user-attachments/assets/67a3c8d7-7ea5-4fa4-8384-debebc893233)

And in the CLspEditor it enables a quick switch back to the
traditional CEditor.

![image](https://github.com/user-attachments/assets/e508a726-f892-47da-92bd-a195bedc0dda)

If there is no project specific setting for `prefer_lsp` a
quick confirmation dialog is displayed with options for help
and feedback:

![image](https://github.com/user-attachments/assets/7c33d4fe-69a8-4cf8-b1fb-7ca80e07020c)

and the other way:

![image](https://github.com/user-attachments/assets/a69a87d8-4f32-4e58-a651-2583db50183e)

If the editor is open on a specific project and that project
has project specific preferences for `prefer_lsp`, instead of
automatically changing the setting, the property page is opened:

![image](https://github.com/user-attachments/assets/16c2ce3b-5b62-4199-8392-5d6800f621c7)

A notification is also displayed to the user for a short while after the editors are
re-opening offering more information and access to the preferences.

![image](https://github.com/user-attachments/assets/e8d069de-0939-4503-8755-a130595570d0)

A notification is also displayed when closing the banner allowing
the user easy access to disable opening the banner on new editors

![image](https://github.com/user-attachments/assets/9f9a00ef-8957-4a8a-8a3d-9c804eee5b5e)

Finally a new preference is available:

![image](https://github.com/user-attachments/assets/74d2d461-d219-465b-9276-e93f6720a9ed)

Fixes eclipse-cdt/cdt#968
jonahgraham added a commit to jonahgraham/eclipse-cdt-lsp that referenced this issue Feb 19, 2025
Contribute a banner to the CEditor and CLspEditor to promote
the new C/C++ editing experience based on LSP. The banner in
CEditor enables a quick switch to the LSP editor:

![image](https://github.com/user-attachments/assets/67a3c8d7-7ea5-4fa4-8384-debebc893233)

And in the CLspEditor it enables a quick switch back to the
traditional CEditor.

![image](https://github.com/user-attachments/assets/e508a726-f892-47da-92bd-a195bedc0dda)

If there is no project specific setting for `prefer_lsp` a
quick confirmation dialog is displayed with options for help
and feedback:

![image](https://github.com/user-attachments/assets/7c33d4fe-69a8-4cf8-b1fb-7ca80e07020c)

and the other way:

![image](https://github.com/user-attachments/assets/a69a87d8-4f32-4e58-a651-2583db50183e)

If the editor is open on a specific project and that project
has project specific preferences for `prefer_lsp`, instead of
automatically changing the setting, the property page is opened:

![image](https://github.com/user-attachments/assets/16c2ce3b-5b62-4199-8392-5d6800f621c7)

A notification is also displayed to the user for a short while after the editors are
re-opening offering more information and access to the preferences.

![image](https://github.com/user-attachments/assets/e8d069de-0939-4503-8755-a130595570d0)

A notification is also displayed when closing the banner allowing
the user easy access to disable opening the banner on new editors

![image](https://github.com/user-attachments/assets/9f9a00ef-8957-4a8a-8a3d-9c804eee5b5e)

Finally a new preference is available:

![image](https://github.com/user-attachments/assets/74d2d461-d219-465b-9276-e93f6720a9ed)

Fixes eclipse-cdt/cdt#968
jonahgraham added a commit to jonahgraham/eclipse-cdt-lsp that referenced this issue Feb 19, 2025
Contribute a banner to the CEditor and CLspEditor to promote
the new C/C++ editing experience based on LSP. The banner in
CEditor enables a quick switch to the LSP editor:

![image](https://github.com/user-attachments/assets/67a3c8d7-7ea5-4fa4-8384-debebc893233)

And in the CLspEditor it enables a quick switch back to the
traditional CEditor.

![image](https://github.com/user-attachments/assets/e508a726-f892-47da-92bd-a195bedc0dda)

If there is no project specific setting for `prefer_lsp` a
quick confirmation dialog is displayed with options for help
and feedback:

![image](https://github.com/user-attachments/assets/7c33d4fe-69a8-4cf8-b1fb-7ca80e07020c)

and the other way:

![image](https://github.com/user-attachments/assets/a69a87d8-4f32-4e58-a651-2583db50183e)

If the editor is open on a specific project and that project
has project specific preferences for `prefer_lsp`, instead of
automatically changing the setting, the property page is opened:

![image](https://github.com/user-attachments/assets/16c2ce3b-5b62-4199-8392-5d6800f621c7)

A notification is also displayed to the user for a short while after the editors are
re-opening offering more information and access to the preferences.

![image](https://github.com/user-attachments/assets/e8d069de-0939-4503-8755-a130595570d0)

A notification is also displayed when closing the banner allowing
the user easy access to disable opening the banner on new editors

![image](https://github.com/user-attachments/assets/9f9a00ef-8957-4a8a-8a3d-9c804eee5b5e)

Finally a new preference is available:

![image](https://github.com/user-attachments/assets/74d2d461-d219-465b-9276-e93f6720a9ed)

Fixes eclipse-cdt/cdt#968
jonahgraham added a commit to eclipse-cdt/cdt-lsp that referenced this issue Feb 19, 2025
Contribute a banner to the CEditor and CLspEditor to promote
the new C/C++ editing experience based on LSP. The banner in
CEditor enables a quick switch to the LSP editor:

![image](https://github.com/user-attachments/assets/67a3c8d7-7ea5-4fa4-8384-debebc893233)

And in the CLspEditor it enables a quick switch back to the
traditional CEditor.

![image](https://github.com/user-attachments/assets/e508a726-f892-47da-92bd-a195bedc0dda)

If there is no project specific setting for `prefer_lsp` a
quick confirmation dialog is displayed with options for help
and feedback:

![image](https://github.com/user-attachments/assets/7c33d4fe-69a8-4cf8-b1fb-7ca80e07020c)

and the other way:

![image](https://github.com/user-attachments/assets/a69a87d8-4f32-4e58-a651-2583db50183e)

If the editor is open on a specific project and that project
has project specific preferences for `prefer_lsp`, instead of
automatically changing the setting, the property page is opened:

![image](https://github.com/user-attachments/assets/16c2ce3b-5b62-4199-8392-5d6800f621c7)

A notification is also displayed to the user for a short while after the editors are
re-opening offering more information and access to the preferences.

![image](https://github.com/user-attachments/assets/e8d069de-0939-4503-8755-a130595570d0)

A notification is also displayed when closing the banner allowing
the user easy access to disable opening the banner on new editors

![image](https://github.com/user-attachments/assets/9f9a00ef-8957-4a8a-8a3d-9c804eee5b5e)

Finally a new preference is available:

![image](https://github.com/user-attachments/assets/74d2d461-d219-465b-9276-e93f6720a9ed)

Fixes eclipse-cdt/cdt#968
@jonahgraham jonahgraham modified the milestones: 12.0.0 M3, 12.0.0 Mar 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
editor The CDT C/C++, Assembly, Makefile and other editors provided by CDT noteworthy Pull requests and fixed issues that should be highlighted to users
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant
0