我对Visual Studio Code还很陌生,我正在尝试编辑一些Ruby代码。我安装了Ruby support,并启用了语言服务器,但按住Ctrl键并单击函数名不起作用,F12也不起作用。这两个特性对于Python代码都很好用。
在Ruby代码中,如何从函数调用导航到其定义?
下面是我尝试的Ruby代码:
def foo
puts "In foo."
end
foo()
以下是我的设置:
{
"explorer.confirmDelete": false,
"explorer.confirmDragAndDrop": false,
"terminal.integrated.fontSize": 15,
"git.confirmSync": false,
"ruby.useLanguageServer": true,
"editor.rulers": [80, 120]
}
下面是运行良好的Python代码:
def foo():
print('In foo.')
foo()
5条答案
按热度按时间snz8szmq1#
在VSCode中,导航到Ruby函数定义称为“转到编辑器中的符号...":
(Windows:Ctrl + Shift + O。Mac:命令+ Shift + O)。
目前,这在VSCode中还不能直接使用,但是VSCode Ruby Symbols是一个实现它的轻量级扩展。
gg0vcinb2#
多亏了Chris的建议,我得到了一个更好的错误消息。按照这个建议,我发现Ruby的代码导航似乎需要第二语言服务器:solargraph。我不知道你是否需要这两个,但我现在可以导航到Ruby定义。我还必须自动完成工作。
更新【2022】
回到Ubuntu 22.04上的VSCode1.67.0,我不再需要solargraph了。但是,我确实费了点劲才弄清楚让它工作的确切步骤:
1.打开文件:首选项:扩展名。
1.搜索Peng Lv的Ruby并安装。
1.打开文件:首选项:设定。
1.单击右上角的按钮以打开JSON设置文件:
1.添加这些设置:
1.重新启动VSCode。
u3r8eeie3#
1.尝试设置“ruby.intellisense”:设置中的“rubyLocate”。
1.检查文件夹.vscode文件在你的项目-〉设置. json-〉{“ruby.intellisense”:“Ruby定位”}
snvhrwxg4#
安装扩展Ruby Solargraph
bqucvtff5#
如果这对其他人有帮助:根据我自己的经验,您需要在Rails repo中安装solargraph/在VSCode中启用solargraph,并且在VSCode设置中指定rubyLocate作为Ruby intellisense方法。“转到定义”对于只安装了solargraph的Rails项目不起作用,但是一旦我将rubyLocate设置为intellisense方法(默认设置为“false”),它就开始起作用了。