VS 代码:自动填充(在 Scala / Metals 中)强制光标在括号后*跳转

问题描述 投票:0回答:2

我不认为这只是 Scala 或 Metals 插件。我记得这种情况也发生在 Python 上,但我目前的情况是在 Scala 上。

真的很喜欢使用自动填充和建议;这是我在任何 IDE 中最喜欢的部分,包括 VS Code。

VS Code 自动填充效果很好,它在自动填充后将光标放在哪里真的很令人沮丧。而且我觉得我一定做错了什么,因为我找不到任何有这个问题的人。

例子:

下面我正在写

println
,就像一个假人,但它发生在任何自动填充中。我输入足够多,以便可以看到自动完成选项出现。

然后我在突出显示的选项上点击自动完成,并在右括号后用光标填充

但是,当然,当我自动填充时,我希望光标位于 inside 括号内,而不是在它们之后。

如何让自动完成功能在 VS Code 中更加友好?

visual-studio-code autocomplete
2个回答
0
投票

啊!!我最终弄清楚发生了什么,以及为什么它看起来如此不一致:

如果我选择一个不需要参数的自动填充函数,那么它会自动填充并将光标放在括号的末尾。如果我选择一个确实需要参数的,那么它将放在括号内。

这是有道理的,除了有几个函数可以不带参数使用,但很少有, VS Code 总是把无参数的情况作为首选。所以,如果你看到最上面的一个并且对它“满意”并选择它,光标将跳到最后。

正如您在上面看到的,有一个 no argument

println()
是自动填充列表的顶部。不理想,但至少现在我明白发生了什么。不确定修复它的快速方法,再一次,这是我要输入的东西。可能只是避免自动填充是最快的。 :(


0
投票

我花了几分钟才弄清楚选择带参数的方法版本会将光标放在括号内而不是外面,这发生在选择无参数版本时。

你可以做些什么来改进它是去你的 VS Code

settings.json
文件并检查是否有一个名为
"editor.suggestSelection": "first"
的设置。将默认值更改为 recentlyUsed 甚至 recentlyUsedByPrefix。有了这个,您可以“教”VS Code 来建议您建议使用的顶部,我相信最后是您想要放在顶部的那些。 更多关于建议选择.

© www.soinside.com 2019 - 2024. All rights reserved.