VScode 的环境管理

VScode 的环境管理

随着使用 VScode 进行工作的环境越来越多,安装的插件也越来越多,原本轻量级的 VScode 变得越来越臃肿。日常打开 VScode 可能只想简单看看 .txt 文件,也要加载所有插件,消耗资源。本文阐述了一种方案,可以实现:

  • 开启 VScode 时不启动所有扩展从而导致资源消耗
  • 不同工作环境整合
  • 环境多终端设备同步

需要知道的有关 VScode 的事

很了解 VScode 的话可以跳过。

标题栏

VScode 的标题栏会显示当前编辑器的所属信息,比如单独文件会显示“文件名 - Visual Studio Code”,打开了某工作区(参考 工作区)会显示“文件名 - 工作区名 (工作区) - Visual Studio Code”(这样的显示是逐级显示的,工作区在文件之后)。

记忆

VScode 常规启动时,会自动打开上次关闭时记忆的状态。

工作区

工作区:

  • 工作区特性,通过 .code-workspace 文件记录文件夹和单独打开的文件(文件夹之外)的路径(工作区记录文件和文件夹的路径,并在 VScode 中展示所有文件结构),记录此区域中的统一的 VScode 的行为(包括“设置”、文件夹文件的打开情况,以及阅读位置等,不会记录扩展的开闭情况,但扩展的开闭情况会在缓存中,与 .code-workspace 文件关联规则。
  • 无工作区状态。VScode,不打开任何文件夹,此时是无工作区状态,或者由于上次关闭 VScode 时处于某个工作区环境内,再次启动 VScode 会自动进入记忆的工作区,则可以“文件 - 关闭工作区”,即进入无工作区状态无工作区状态下使用 VScode 打开单独文件后仍然处于无工作区状态
  • 开启工作区。“文件”下的“将文件夹添加到工作区…”、“将工作区另存为…”、“复制工作区”,都可以获得工作区,此工作区同当前 VScode 的状态。
  • 文件夹状态,这是一个介于无工作区状态和工作区状态之间的状态,但非常接近工作区状态。使用 VScode 打开任一文件夹(即,工作目录)就进入了文件夹状态,VScode 标题栏会显示文件夹名,但无“(工作区)”字样。此区域特性与 “工作区特性” 完全相同。

工作区的设置和保存:

  • 进入工作区之后,可以对当前工作区进行比全局设置优先级更高的设置,包括“设置”和扩展的开启关闭等。
  • 对于未保存工作区(其 .code-workspace 文件在缓存中,可以进入记忆),对工作区进行设置之后,“文件 - 将工作区另存为…”将工作区另存为 .code-workspace 文件,此时工作区变为保存的工作区。以后可以通过 VScode 打开此 .code-workspace 文件来打开此工作区,也可以在 VScode 中“文件 - 从文件打开工作区”,选择 .code-workspace 文件来打开工作区。
  • 对工作区做的任何设置都会自动保存到工作区的 .code-workspace 文件中。未保存工作区也是如此,只是未保存工作区的状态记录依赖记忆记忆的缓存篡改之后就会失去未保存工作区,保存的工作区就不存在这个问题。

空工作区及其设置和保存:

  • 无工作区状态下,不打开文件夹和文件的条件下 “开启工作区”(即,“文件”下的“将工作区另存为…”、“复制工作区”都可以),即可获得没有任何文件夹和文件的工作区,即空工作区
  • 推荐在无工作区状态下,“文件 - 将工作区另存为…”将工作区另存为 .code-workspace 文件。这样做可以获得一个空工作区的 .code-workspace 文件(目前此工作区的设置是全局设置的复制),并自动进入该工作区。此时可以对此空工作区进行工作区的设置和保存。

使用到的扩展

Program Manager 扩展在其配置文件 projects.json 中记录工作区文件夹路径,或者记录工作区的 .code-workspace 文件路径,将工作区链接到“活动栏 - 项目管理器”中的选项,选择即可直接进入对应工作区。
在“设置”中全局设置此扩展的配置文件 projects.json 的目录:Projects Location,设定为云盘统一目录。此设置同步,所有终端设备上的 VScode 都将访问同一个目录下的配置文件 projects.json,获取相同的工作区文件夹路径,或者记录工作区的 .code-workspace 文件路径等相关信息。

Remote - SSH 扩展(相关扩展为:Remote - SSH: Editing Configuration Files, Remote Explorer)是用来链接远程服务器的扩展,此扩展可以登录并记录 Remote Host 信息,将 Remote Host 链接到“活动栏 - 远程资源管理器 - 远程”中的选项,选择即可直接通过 Vscode 进入对应 Remote Host 环境。
登录过程发生在本机,所以在本地环境下,使用此扩展登录 Remote Host 时,需要保证此扩展及其相关扩展已经打开,而不是在 Remote Host 的工作环境打开扩展及其相关扩展。此扩展可以全局开启。
在“设置”中全局设置此扩展的配置文件:Config File,设定为云盘统一文件。此设置同步,所有终端设备上的 VScode 都将访问同一个配置文件,获取相同的 Remote Host 相关信息。VScode 链接 Remote Host 时会访问此文件。

WSL 扩展以远程服务器的形式整合 WSL 到 VScode 上,将本机安装的 WSL 链接到“活动栏 - 远程资源管理器 - WSL 目标”中的选项,选择即可直接通过 Vscode 进入对应 WSL 环境。
在非 WSL 环境下,使用此扩展登录 WSL 时,需要保证此扩展及其相关扩展已经打开,而不是在 WSL 的工作环境打开扩展及其相关扩展。此扩展可以全局开启。

实现

利用 Program Manager 扩展的配置文件(可以保存工作区的 .code-workspace 文件路径从而将工作区链接到“活动栏 - 项目管理器”中的选项的特性),将所有工作环境整合到“活动栏 - 项目管理器”中。具体做法是:

  • 全局设置,这也是日常一般情况使用的设置。需要的扩展开启“启用”(就是全局启用),“设置”中设定全局设置。
  • 生成工作区。具体做法:
    • 开启 VScode,生成并进入空工作区。

      OR

    • 在 VScode 中打开(Remote Host 或者 WSL),打开方式为单纯的链接账户而不打开任何文件夹。

      • 保持不打开任何文件夹,生成并进入空工作区。

        OR

      • (推荐)打开文件夹,推荐用户主目录,此时激活了一个工作区。这样做的好处是,进入这个工作区就直接进入(Remote Host 或者 WSL)的用户主目录,更符合(Remote Host 或者 WSL)的使用场景。

  • 接下来为工作区进行只适用于工作区的设定:为只有此工作环境下才需要的扩展开启“启用(工作区)”,“设置”中设定的工作区设置。
  • 保存设置好的工作区:“文件 - 将工作区另存为…”,所有工作区的 .code-workspace 文件储存在云盘统一目录下。(保存好了的)(经过精心设置 VScode 的行为规则的)(拥有 .code-workspace 文件的工作区)(我称之为模板工作区的工作区)至此已经制备完成。模板工作区就是设计好的工作环境。
  • 整合工作区到 Program Manager:VScode 进入模板工作区,“活动栏 - 项目管理器 - 保存项目”,即可将工作区整合至“活动栏 - 项目管理器”中。
  • 更新模板工作区。在对工作区进行状态改变之后,工作区状态会自动保存到 .code-workspace 文件中,所以不需要额外的保存操作。如果模板工作区的 .code-workspace 文件发生变化(比如文件名或者文件所处目录发生变化),需要重新进行此工作区的 “工作区到 Program Manager” 步骤。

“活动栏 - 远程资源管理器”只能整合 Remote Host 和 WSL,可以在“活动栏”隐藏“远程资源管理器”。所有的工作环境(模板工作区)都已经整合至“活动栏 - 项目管理器”中了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值