有什么方法可以使用 Visual Studio Code 编辑器而不是 nano/vim/emacs 来编辑文件?

RE5*_*569 5 command-line hidden-files bashrc windows-subsystem-for-linux visual-studio-code

我遇到了一个问题,我只能使用nano命令编辑 .bashrc 或 .zshrc 文件。

当我输入code .bashrc它时,它会打开一个空的 .bashrc 文件。随着nano它工作在壳体内,并通过适当的命令显示文件nano .bashrc,但我通过纳米恨编辑文件和我宁愿做在Visual Studio中,任何想法如何解决这一问题,使Visual Studio代码可以阅读。文件?

地狱,即使在使用 编辑普通文件(即未使用 隐藏的文件.)时code,虽然它可以工作,git status但不会注册更改,但如果文件使用nano. 作为一个不喜欢通过 shell 进行编辑的人,这让我非常沮丧,这让我考虑回到 Git Bash ......尽管我更喜欢在 WSL 上使用 zsh。

Eli*_*gan 4

您可以在 Windows 中启动 Visual Studio Code,然后使用它连接到 WSL 系统并打开您想要编辑的任何文件。这与通过 SSH 在另一台计算机上远程编辑文件的方式几乎相同(可以从 Windows 和 GNU/Linux 客户端完成,并且本身与 WSL 是分开的)。从用户界面的角度来看,唯一的区别是您选择连接哪个菜单项。此外,根据出现的问题,设置过程也可能使code命令按照您想要的方式工作。

如果您尚未安装,我建议您在 Visual Studio Code 中安装远程开发扩展包。但实际上您只需要Remote - WSL扩展即可。(远程开发扩展包安装该扩展以及其他扩展,以便通过 SSH 在非 WSL 系统上进行远程编辑。)您可以从 Visual Studio Code 中安装它;这些链接主要供参考。安装完成后,您应该能够code从 WSL 系统内运行并在连接到 WSL 系统的主机系统上打开编辑器窗口,尽管我一直觉得这很尴尬。

请注意,不支持在 WSL 系统内安装 Visual Studio Code 本身(即客户端程序),并且即使在具有 X 服务器(如 VcXsrv)(其他图形 Ubuntu 程序通常在其上运行)的 Windows 系统上也不太可能运行。(我已经尝试过。)如果您在 WSL 系统内安装了 Visual Studio Code 包,我建议删除它们,这样做甚至可能会让您的code命令开始正常工作。

不管怎样,你可以在编辑器内连接到 WSL 系统,这是我推荐的。安装必要的扩展后,您应该会> <在每个 Visual Studio Code 窗口的左下角看到一个按钮,其中鼠标悬停文本为“打开远程窗口”

Visual Studio Code 左下角的“打开远程窗口”按钮 - 在默认配色方案中,该按钮为绿底白字

单击该按钮时,窗口顶部会出现一个菜单,其中包含启动远程编辑的各种操作。大多数时候您可能需要选择Remote-WSL: New Window 。

显示与远程编辑相关的选项的菜单

在新窗口的左下角,将显示WSL: Ubuntu

屏幕左下角的远程编辑按钮现在更宽,并显示 WSL: Ubuntu,表明此窗口中的大多数操作适用于远程编辑会话

如果您要在远程编辑窗口中打开文件,那么您不会显示本机文件打开对话框,而是会在 Visual Studio Code 中看到菜单,通过该菜单您可以导航到所连接的系统中的任何位置。在本例中,这就是您的 WSL 系统。Ctrl+O打开单个文件。您还可以在此模式下打开文件夹(以通常的方式),您可能经常想要这样做,尤其是当您希望在编辑器中集成 Git 时。但对于.bashrc就地编辑文件,您可能不想这样做。

按 Ctrl+O 选择远程系统上的单个文件以在编辑器中打开时出现的菜单

Ctrl在按+时出现的菜单中O,应该显示,但用您的用户名(在 WSL 系统上)代替。例如,它对我说。如果是这样,那么您来对地方了。如果向下滚动,您可能会看到列出的内容,但您可以简单地输入,所以它会显示。然后按或单击。/home/you/you/home/ek/.bashrc.bashrc/home/you/.bashrcEnterOK

打开文件菜单,由 Ctrl+O 调出,显示用户的主目录,其中已输入文件名 .bashrc,导致在菜单中选择该文件并准备打开

您可以用同样的方法打开其他文件;此过程并不特定于.bashrc.

打开文件后,您可以对其进行编辑并保存更改。修改是在 WSL 系统内进行的。

在 WSL 系统上编辑文件

尽管您需要打开一个文件夹才能在编辑器中集成 Git(就像在本地编辑时通常所做的那样),但您可以使用 Git 并从终端执行其他操作。当您在远程编辑窗口中打开终端时,终端会在您所连接的系统(在本例中是您的 WSL 系统)上提供一个 shell。你可能已经有了这样的 shell;如果没有,请按Ctrl+ `

远程 Visual Studio Code 窗口底部的远程终端

其工作方式是 Visual Studio Code 实际上在远程系统(在本例中为 WSL 系统)上运行单独的服务器程序。它将其文件存储在~/.vscode-server该系统上的主目录中。当连接到实际的单独计算机(或虚拟机)时,仍然使用该目录,即使这些系统也恰好具有正常(即客户端)Visual Studio Code 安装。仅 WSL(不支持其他远程)支持在远程计算机上运行的 shell 中运行code命令以通过远程连接打开文件,即使没有 WSL,也可以轻松完成。

最后,请注意,您不应期望远程编辑窗口具有与常规编辑窗口不同的配色方案(例如您在我的窗口中看到的蓝色),除非您已经进行了设置。没有不同的配色方案并不意味着有什么问题。