RVM&x27;s通过repo文件自动检测Ruby版本功能在VSCode登录外壳终端中不起作用

RVM&x27;s通过repo文件自动检测Ruby版本功能在VSCode登录外壳终端中不起作用,ruby,visual-studio-code,rvm,Ruby,Visual Studio Code,Rvm,RVM有一个功能,可以根据repo中的.Ruby version文件检测并使用正确的Ruby版本。这需要一个登录shell,我已通过以下方式在VSCode中启用该shell: "terminal.integrated.shell.linux": "bash", "terminal.integrated.shellArgs.linux": ["--login"], 但是,默认情况下该功能不起作用,每次打开终端时,我都必须cd.,就好像它不是登录shell一样 gnome外壳中的新选项卡也存在类似

RVM有一个功能,可以根据repo中的
.Ruby version
文件检测并使用正确的Ruby版本。这需要一个登录shell,我已通过以下方式在VSCode中启用该shell:

"terminal.integrated.shell.linux": "bash",
"terminal.integrated.shellArgs.linux": ["--login"],
但是,默认情况下该功能不起作用,每次打开终端时,我都必须
cd.
,就好像它不是登录shell一样

gnome外壳中的新选项卡也存在类似问题:


我想知道是否有其他人遇到过这种情况,这是否是VSCode或RVM的问题?

这可能是一种解决方法

将此添加到vs中 “terminal.integrated.shellArgs.linux”:[ “cd。”
],这可能是一个解决办法

将此添加到vs中 “terminal.integrated.shellArgs.linux”:[ “cd。”
],

这在默认情况下不起作用的原因是rvm在shell中钩住cd命令,为您的项目设置ruby/gem路径,并且没有通过VS-Code终端打开向shell发出cd

我能够在我的Linux系统上解决这个问题,方法是按照问题中的建议添加登录设置,然后在~/.bash_配置文件末尾的RVM实际设置部分添加一张简单的
cd.


这样做会导致rvm正确地调整VS代码终端中的路径。

默认情况下,这不起作用的原因是rvm在shell中挂起cd命令来设置项目的ruby/gem路径,并且VS代码终端打开时没有向shell发出cd

我能够在我的Linux系统上解决这个问题,方法是按照问题中的建议添加登录设置,然后在~/.bash_配置文件末尾的RVM实际设置部分添加一张简单的
cd.


这样做会导致rvm正确地调整VS代码终端中的路径。

/bin/bash cd.:没有这样的文件或目录我认为选项是将参数传递给shell,而不是运行命令。/bin/bash cd.:没有这样的文件或目录我认为选项是将参数传递给shell,不要运行命令。