Visual Studio Code,也称为 VS Code,是一款适用于 Linux、Windows 和 macOS 的代码编辑器。它是一种介于编辑文本和管理整个代码库之间的编辑器,类似于集成开发环境 (IDE)。它可以通过插件扩展,并且已被证明是一款可靠的文本编辑器,可以轻松击败强大的非开源竞争对手编辑器。
微软以开源形式发布了 VS Code,但您从微软下载的版本并非开源。但是,您有多种选择可以使用开源的 VS Code,或者选择其开源替代品之一。
构建开源的 VS Code
VS Code 的源代码在 GitHub 上可用。然而,当您从 微软 下载 VS Code 应用程序时,您会发现您的下载根据 微软软件许可 获得许可。这不是开源许可证。区别在于构建过程。
VS Code 项目的微软开发者 Chris Dias 在 一篇评论中 将 VS Code 与 Chrome 浏览器及其开源“上游”项目 Chromium 进行了比较。VS Code 确实是基于开源代码库构建的。官方微软品牌版本通过微软特定的功能进行了自定义,包括商标、扩展库、专有的 C# 调试器和遥测技术。但是,当您自行克隆和构建代码时,这些目标均未配置,因此您会生成一个“干净”版本,称为 Code - OSS(OSS 代表开源软件)。
实际上,VS Code 和 Code - OSS 之间的差异很小。最值得注意的是,VS Code 包含遥测技术,即跟踪软件。微软不太可能真的在跟踪您的一举一动,而且现在有很多软件都在收集使用数据。您是否在意 VS Code 的遥测技术取决于您自己。如果您不想进行使用情况跟踪,这里有一些很棒的(开源)VS Code 替代品。
VSCodium

(Seth Kenlon, CC BY-SA 4.0)
VS Code 最简单的替代品是 VS Code 本身,它是没有微软专有添加项的版本。VSCodium 项目提供了 Code - OSS 的可下载可执行文件,它是从 VS Code 代码库构建的,没有微软的 product.json
更改。VSCodium 开发者还竭尽全力停用所有难以找到的遥测选项,从而提供您可以找到的最干净的 VS Code 源代码构建版本,而无需自行构建。
VSCodium 提醒说,VS Code 静默地包含了一些专有工具,这些工具无法与开源构建版本一起发布。这包括 C# 调试器和一些库扩展。如果您需要它们,文档中记录了针对这些问题的解决方法,但是如果您依赖于 VS Code 中的某些非常具体的功能,则应验证它在 VSCodium 中是否可以正常运行。
您还应该验证所有 遥测技术是否已停用。
Code - OSS
如果您不想使用 VSCodium 的构建版本,您可以 从源代码编译 VS Code,最终得到相同的结果。可执行文件称为 Code - OSS
而不是 VSCode
,并且适用于 VSCodium 的许可限制也适用于您的构建版本,但解决方法也同样适用。
如果您从源代码构建应用程序,则应在首次启动时验证所有 遥测技术是否已停用。
Atom

(Seth Kenlon, CC BY-SA 4.0)
Atom 是一款类似 IDE 的开源文本编辑器,微软在收购 GitHub 时获得了它。与 VS Code 类似,您可以使用插件扩展 Atom 编辑器,并使用主题和您独特的工具组合对其进行自定义。它也是跨平台的,并且具有内置的 GitHub 集成。简而言之,Atom 可能会成为您需要的任何工具,只要您需要的扩展程序已经存在,或者您愿意编写它们。
与 VS Code 类似,Atom 默认情况下也包含 指标跟踪。可以禁用此功能,并且与 VS Code 不同,扩展程序没有任何任意限制,因此您无需为了保护隐私而更改工作流程。Atom 当然是程序员的有用工具,但对于 任何使用计算机的人 来说,它也是一款非常出色的编辑器。如果您正在寻找一款通用的文本编辑器,请尝试一下 Atom。
GNOME Builder

(Seth Kenlon, CC BY-SA 4.0)
GNOME Builder 是为 GNOME 桌面开发的 IDE,是一款适用于 Linux 的代码编辑器,专门用于构建 GNOME 应用程序。如果您正在为 Linux 构建应用程序,并且想要一种简单的兼容性途径,那么 Builder 是一个简单的选择。从 Flathub.org 安装 Builder;当您启动一个项目时,即使您缺少 GNOME SDK,它也会提示您安装。这意味着您不必有意识地跟踪 GNOME 来维护您的应用程序,因为 Builder 会为您完成这项工作。
但是,您可以将 Builder 用于远不止 GNOME 应用程序。它支持数十种编程语言,包括 Python、Rust、C 和 C++、Java、Go、JavaScript、TypeScript、VB.NET、多种标记和 Markdown 语言等等。其中一些语言具有完整的支持,包括自动完成和弹出式函数定义,而另一些语言仅具有简单的便利功能,例如语法突出显示和自动括号匹配。无论您认为自己是认真的程序员,还是只需要一个优秀的 HTML 和 CSS 编辑器,这款 IDE 都令人愉快。
Geany

(Seth Kenlon, CC BY-SA 4.0)
Geany 是一款功能强大、稳定且轻量级的编辑器,具有有用的功能,可帮助您编写出色的 Bash、Python、Lua、XML、HTML、LaTeX 等代码。它为 50 种不同的编程和脚本语言、标记语言以及其他文件类型(例如 .diff 和 .po)提供了充足的支持。至少,Geany 几乎肯定会提供括号匹配和语法突出显示——而且通常会提供更多功能。
Geany 是一款朴素的小编辑器,但通过插件,您可以添加项目视图面板、文件系统树、调试、终端等功能,直到它看起来和行为都像一个 IDE。或者,如果您愿意,也可以保持其简单和低调。如果您由于 CPU 或 RAM 的限制而无法在计算机上运行 VS Code,那么 Geany 是显而易见的替代选择。它启动速度快,内存占用量可以忽略不计。虽然 Geany 比在终端中运行 Vim 稍微重一些,但即使在 Raspberry Pi 上,它也快速而灵敏。
Brackets

(Seth Kenlon, CC BY-SA 4.0)
Brackets 是一款面向 Web 开发人员的文本编辑器和 IDE。它对 HTML、CSS、JavaScript、PHP 甚至 Python 提供了强大的支持。但是,与 VS Code 类似,它拥有丰富的扩展程序生态系统,因此您可以对其进行扩展,使其成为您最常用的任何语言的工作台。
有一些扩展程序可以帮助解析语言、运行脚本,甚至编译和执行代码。Brackets 具有任何人都可以理解的传统界面,无论您是否熟悉 IDE 甚至超出简单记事本的文本编辑器。如果您花一些时间添加相关的扩展程序并了解它们,您会发现 Brackets 是一款有用且巧妙的编辑器,它可以通过自动完成和 linting 来帮助您避免在键入任何内容时犯愚蠢的错误。如果您正在编写代码,它可能会加快您的测试和调试工作流程。
Che

(Seth Kenlon, CC BY-SA 4.0)
如果您喜欢走在最前沿,那么 Che 是您需要尝试的编辑器。它是一款基于云的 IDE,因此默认情况下以软件即服务 (SaaS) 的形式运行,但它是完全开源的,因此如果您有 Kubernetes 实例,则可以将其作为您自己的 SaaS 运行。
然而,Che 不仅仅是一款在线 IDE,它还是一款为云开发而构建的 IDE。它不假设您期望或想要查看本地文件系统。它在云中生存和工作,因此您也可以这样做。实际上,如果您有 Git 服务器,则可以将其视为文件系统,并直接从其存储库中处理项目。当然,如果您喜欢拥有本地备份副本,也可以下载您所做的任何工作。
但其主要功能,也是云开发人员感到兴奋的功能是,Che 是一款功能齐全、Kubernetes 感知、开源的 IDE。如果您正在为云构建应用程序、站点或容器(或三者的组合),那么 Che 是您需要尝试的编辑器。
您的选择是什么?
您是否正在使用这些 VS Code 替代品之一?您是否想尝试其中一种?请在评论中分享您的反馈。
33 条评论