VSCode的远程扩展如何通过其内部终端在本地编辑器中打开文件?

时间:2020-06-25 20:33:15

标签: visual-studio-code

我相当定期地使用VSCode的远程开发扩展。我可以在VS Code中使用终端,就像在我自己​​的机器上一样,甚至code命令也可以正常工作。也就是说,当我处于远程VSCode会话中时,我可以键入code path/to/some/file,它将打开带有该文件的另一个编辑器选项卡。终端会话和正在打开的文件在我连接的远程计算机上。

我在远程计算机上安装了VSCode,并且code可执行文件位于我的PATH中。所以我的问题是,如何在后台实现此功能?也就是说,VSCode如何知道当我键入code path/to/some/file时,应该将该文件打开到计算机上的另一个编辑器选项卡中,而不是尝试在远程计算机上启动VSCode?

1 个答案:

答案 0 :(得分:0)

在我写下问题的几秒钟后,我找到了答案。

如果我在终端中运行which code,它不会解析为通常的VSCode可执行文件,而是解析为位于$HOME/.vscode-server/bin/a5d1cc28bb5da32ec67e86cc50f84c67cc690321/bin/code的VSCode可执行文件。

如果我echo $PATH可以看到$HOME/.config/bin$HOME/.vscode-server/bin/a5d1cc28bb5da32ec67e86cc50f84c67cc690321/bin已附加到我的bash配置文件生成的PATH环境变量的开头。

我认为这意味着VSCode正在使用其他配置文件脚本执行bash

  1. 获取我通常的bash个人资料
  2. 在上面创建目录,并将一些帮助程序复制到其中
  3. 修改我的路径以包括这些目录

我还假定注入的code可执行文件正在以某种方式与我的VSCode本地实例通信,指示其在其编辑器中打开文件。