Stream: t-compiler/wg-rls-2.0

Topic: Help configuring rust-analyzer


Do Duy (May 16 2020 at 11:08, on Zulip):

Hello everyone, I just started using rust-analyzer in vim using YouCompleteMe.

When I type a function and then type "(", I get a popup with the function's prototype. How can I disable this behaviour? Screenshot-from-2020-05-16-18-08-06.png

Do Duy (May 16 2020 at 12:01, on Zulip):

I got this in logs "failed to fetch the server settings: ResponseError { code: -32601, message: "Method not found", data: None }"

My .ycm_extra_conf.py file:

def Settings( **kwargs ):
    if kwargs[ 'language' ] == 'rust':
        config = { "rust-analyzer.completion.addCallArgumentSnippets": False }
        return { 'ls': config }
Do Duy (May 16 2020 at 12:31, on Zulip):

server receives this request:

[INFO  rust_analyzer::main_loop] loop turn = Notification(Notification { method: "workspace/didChangeConfiguration", params: Object({"settings": Object({"rust-analyzer.completion.addCallArgumentSnippets": Bool(false)})}) })
Do Duy (May 16 2020 at 12:39, on Zulip):

Ok so RA ignores data in didChangeConfiguation, and instead requests for a configuration. But YCM doesn't support this request.

Do Duy (May 16 2020 at 13:09, on Zulip):

Relevant issue https://github.com/microsoft/language-server-protocol/issues/972

Do Duy (May 16 2020 at 13:40, on Zulip):

Apart from the above issue, RA does receive a configuration via initialization request. So, my config format is wrong.
I'm not sure what is the correct values.

[INFO  rust_analyzer::config] Config::update({
      "rust-analyzer.completion.addCallArgumentSnippets": false
    })
Do Duy (May 16 2020 at 13:53, on Zulip):

Ok so I managed to set the option with

{ "completion": { "addCallArgumentSnippets": False } }

and it still shows the popup. Any idea what is the correct option to disable this popup?

Florian Diebold (May 16 2020 at 13:58, on Zulip):

that's probably just the normal documentation popup, so there's no option to disable that in RA, you would have to check whether YCM allows disabling it

Jeremy Kolb (May 17 2020 at 15:11, on Zulip):

That's the SignatureHelp LSP request. You'll have to disable it client side

Last update: May 29 2020 at 18:05UTC