Skip to content

Top level keywords show up as completions in non-code comments #4907

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
abreis opened this issue Jun 16, 2020 · 5 comments · Fixed by #5089
Closed

Top level keywords show up as completions in non-code comments #4907

abreis opened this issue Jun 16, 2020 · 5 comments · Fixed by #5089

Comments

@abreis
Copy link

abreis commented Jun 16, 2020

I'm seeing top level keyword completion inside plain text comments:

toplevel

... which is quite annoying when you end comments with a full stop.

cc #4566 #4700

@abreis abreis changed the title Top level keywords being completed in plain text comments Top level keywords show up as completions in non-code comments Jun 18, 2020
@BGluth
Copy link
Contributor

BGluth commented Jun 21, 2020

Should any auto-completion/highlighting be happening in comments?

@RalfJung
Copy link
Member

Should any auto-completion/highlighting be happening in comments?

Not sure, but doing none of it would already be an improvement.

@BGluth
Copy link
Contributor

BGluth commented Jun 23, 2020

Alright I'll give this one a go.

@flodiebold should any auto-completion be active when we're writing a comment?

@flodiebold
Copy link
Member

Not sure why you are asking me in particular, but, well, in normal comments there is probably no use for autocompletion, but in doc comments we will want some. But it probably makes sense to disable all current completions in comments right now.

@BGluth
Copy link
Contributor

BGluth commented Jun 23, 2020

Ah ok.

Yeah sorry about that. Wasn't sure who to ask and I just wanted to get something official before I started anything.

@bors bors bot closed this as completed in 57ed622 Jul 2, 2020
matklad pushed a commit to matklad/vscode-rust that referenced this issue Jul 13, 2020
5089: Disable auto-complete on comments r=matklad a=BGluth

Resolves #4907 by disabling any auto-completion on comments.

As flodiebold [pointed out](rust-lang/rust-analyzer#4907 (comment)), in the future we may want to support some form of auto-completion within doc comments, but for now it was suggested to just disable auto-completion on them entirely.

The implementation involves adding a new field `is_comment` to `CompletionContext` and checking if the immediate token we auto-completed on is a comment. I couldn't see a case where we need to check any of the ancestors, but let me know if this is not sufficient. I also wasn't sure if it was necessary to add a new field to this struct, but I decided it's probably the best option if we want to potentially do auto-completion on doc comments in the future.

Finally, the three tests I added should I think ideally not filter results by `CompletionKind::Keyword`, but if I want to get unfiltered results, I need access to a non-public function [get_all_completion_items](https://github.com/rust-analyzer/rust-analyzer/blob/9a4d02faf9c47f401b8756c3f7fcab2198f5f9cd/crates/ra_ide/src/completion/test_utils.rs#L32-L39) which I don't know if I should make public just for this.



5161: SSR: Add initial support for placeholder constraints r=matklad a=davidlattimore



5184: Always install required nightly extension if current one is not nightly r=matklad a=Veetaha

This is weird, but having switched back to stable by uninstalling the extension appears that vscode doesn't destroy the `PersistentState` and thus changing to `nightly` channel doesn't work because the last check for nightly extension was less than 1 hour ago. The simple solution is to skip this check if we know that the current extension version is not nightly.

5185: Force showing extension activation error pop-up notification r=matklad a=Veetaha

Fixes rust-lang/rust-analyzer#5091

5186: fix: correct pd/ppd/tfn/tmod completion doc r=matklad a=fannheyward

https://github.com/rust-analyzer/rust-analyzer/blob/a33eefa3b26000b3018e6bb873f18dbe15ab4ab7/crates/ra_ide/src/completion/complete_snippet.rs#L23-L24

Co-authored-by: BGluth <[email protected]>
Co-authored-by: David Lattimore <[email protected]>
Co-authored-by: Veetaha <[email protected]>
Co-authored-by: Heyward Fann <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants