7 个开源替代 VS Code 的选择

避开微软的专有 VS Code 构建版本,选择开源代码编辑器。
165 位读者喜欢这篇文章。
Person using a laptop

Visual Studio Code,也称为 VS Code,是一款适用于 Linux、Windows 和 macOS 的代码编辑器。它是一种介于编辑文本和管理整个代码库之间的编辑器,类似于集成开发环境 (IDE)。它可以通过插件扩展,并已被证明是一款可靠的文本编辑器,轻松击败了强大的非开源竞争对手编辑器。

微软以开源形式发布了 VS Code,但您从微软下载的版本并非开源。但是,您有多种选择可以使用开源的 VS Code 或选择其开源替代方案之一。

将 VS Code 构建为开源

VS Code 的源代码可在 GitHub 上获取。然而,当您从 Microsoft 下载 VS Code 应用程序时,您会发现您的下载获得了 Microsoft 软件许可的许可。这不是开源许可证。区别在于构建过程。

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

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

Atom 是一款开源的类似 IDE 的文本编辑器,微软在收购 GitHub 时获得了它。与 VS Code 一样,您可以使用插件扩展 Atom 编辑器,并使用主题和您独特的工具组合对其进行自定义。它也是跨平台的,并具有内置的 GitHub 集成。简而言之,Atom 可以成为您需要的任何工具,只要您需要的扩展已经存在,或者您愿意编写它们。

与 VS Code 类似,Atom 默认情况下也包含 指标跟踪。这可以禁用,并且与 VS Code 不同,扩展程序没有任何任意限制,因此您不必为了隐私而改变工作流程。Atom 当然是程序员的有用工具,但对于 任何使用计算机的人 来说,它也是一款非常出色的编辑器。如果您正在寻找一款通用的文本编辑器,不妨试试 Atom。

GNOME Builder

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

Geany 是一款功能强大、稳定且轻量级的编辑器,具有有用的功能,可帮助您编写出色的 Bash、Python、Lua、XML、HTML、LaTeX 等代码。它为 50 种不同的编程和脚本语言、标记语言和各种文件类型(例如 .diff 和 .po)提供了大量支持。至少,Geany 几乎肯定会提供括号匹配和语法突出显示,而且通常会提供更多功能。

Geany 是一款不起眼的编辑器,但通过插件,您可以添加项目视图面板、文件系统树、调试、终端等功能,直到它看起来和行为都像一个 IDE。或者,如果您愿意,您可以保持它的简单和低调。如果由于 CPU 或 RAM 的限制,您无法在计算机上运行 VS Code,Geany 是一个明显的替代方案。它启动速度快,内存占用可以忽略不计。虽然 Geany 比在终端中运行 Vim 稍微重一些,但即使在 Raspberry Pi 上,它也很快很流畅。

Brackets

Brackets 是一款面向 Web 开发人员的文本编辑器和 IDE。它对 HTML、CSS、JavaScript、PHP 甚至 Python 提供了强大的支持。但是,与 VS Code 一样,它拥有丰富的扩展生态系统,因此您可以扩展它,使其成为您最常用的任何语言的工作台。

有一些扩展可以帮助解析语言、运行脚本,甚至编译和执行代码。Brackets 具有任何人都可以理解的传统界面,无论您是否熟悉 IDE,甚至是否熟悉简单的记事本之外的文本编辑器。如果您花一些时间添加相关的扩展并了解它们,您会发现 Brackets 是一款有用且巧妙的编辑器,它可以通过自动完成和代码检查来帮助您避免在键入任何内容时出现愚蠢的错误。如果您正在编写代码,它可能会加快您的测试和调试工作流程。

Che

如果您喜欢走在前沿,Che 是您需要尝试的编辑器。它是一个基于云的 IDE,因此默认情况下作为软件即服务 (SaaS) 运行,但它是完全开源的,因此如果您有 Kubernetes 实例,它可以作为您自己的 SaaS 运行。

Che 不仅仅是一个在线 IDE,它还是一个为云开发而构建的 IDE。它不假设您期望或想要查看本地文件系统。它在云中生存和工作,您也可以这样做。实际上,如果您有 Git 服务器,您可以将其视为您的文件系统,并直接从其存储库处理项目。当然,如果您喜欢拥有本地备份副本,您也可以下载您所做的任何工作。

但其主要功能,也是云开发人员感到兴奋的功能是,Che 是一款功能齐全、Kubernetes 感知的开源 IDE。如果您正在为云构建应用程序、站点或容器(或三者的组合),那么 Che 是您需要尝试的编辑器。

您的选择是什么?

您是否正在使用这些 VS Code 的替代方案之一?是否有您想尝试的方案?请在评论中分享您的反馈。

接下来阅读什么
标签
Seth Kenlon
Seth Kenlon 是一位 UNIX 极客、自由文化倡导者、独立多媒体艺术家和 D&D 爱好者。他曾在电影和计算机行业工作,而且经常同时从事这两个行业。

33 条评论

当然是 GNU Emacs。但它不是替代方案,它是独一无二的。

我同意。Emacs 是最好的。
我使用 spacemacs 来避免配置上的麻烦。它像魅力一样工作。

回复 ,作者:dogsleg

不要因此而讨厌我,因为我是 XEmacs 用户,但这适用于这里。多年前在 slashdot 上看到的:“Emacs 是一个优秀的操作系统,但它缺少的是一个好的编辑器”

回复 ,作者:dogsleg

Eclipse 怎么样?

我考虑过包含 Eclipse,但最终选择了 Che,因为 Che 非常先进,并且感觉比普通的 Eclipse 更像 VSCode。我认为真正的区别在于配置工作流程,但这只是我的个人观点。

Eclipse 绝对是一个很棒的选择。实际上,有一种观点认为,任何 IDE 都比 VSCode 更好,VSCode 实际上并不声称自己是 IDE,而只是一个文本编辑器。

回复 ,作者:girish_managoli

当然是 Vim

对吗?当我浏览列表时,我一直在想 - 他们会把最好的留在最后。
但是没有,没有提到 vim,太常见了!

回复 ,作者:Linux 用户(未验证)

我没有将 Vim 作为替代方案包括在内,因为我在其他地方对其进行了广泛介绍,例如

https://open-source.net.cn/resources/what-vim

https://open-source.net.cn/article/20/2/how-install-vim-plugins

我在此上下文中对“替代方案”的定义基于配置和插件工作流程。虽然 Vim 非常容易扩展(有什么比 .rc 文件更简单的呢?),但我不觉得它一定对正在寻找 VSCode 替代方案的人来说很熟悉。这并不是*不好*,但我试图在一些约束条件下工作,以此来使文章更集中,并避免它成为“清单式”地列出实际上存在的所有其他文本编辑器。

回复 ,作者:dirk dierickx(未验证)

Theia 呢?我认为它与 VSC 非常相似

Theia 是一个用于构建 IDE 的平台。
本文中包含的 Che 是一款 IDE。
两者都是 Eclipse 项目,但我认为 Che 更适合作为替代方案,因为它是一款可以随时使用的 IDE。

回复 ,作者:Fabián(未验证)

www.theia-ide.org 应该在这里提到。它是开源的,可以在浏览器中或本地运行。

此外,www.gitpod.io 提供托管版本,或者您可以自己托管。

已确认。

Theia 是一个用于构建 IDE 的平台。
本文中包含的 Che 是一款 IDE。
两者都是 Eclipse 项目,但我认为 Che 更适合作为替代方案,因为它是一款可以随时使用的 IDE。

回复 ,作者:Mike Nikles(未验证)

NeoVim 与 CoC nvim。它是我能想到的最好的工具。它节省了我 Thinkpad X240 上的电池寿命,但具有 VS Code 附带的智能感知功能,老实说这太棒了。哈哈。

我已经在使用 Atom 做一些基本的事情了!很高兴知道有这么多可用的选项。我已经在使用 Android Studio 遇到了困难,正在寻找一些“绘制”Android XML 的选项/插件,但没有找到。如果您有任何建议,请告诉我 =)

Comodo edit 怎么样?

那么,让我弄清楚:仅仅 MS 发布了 VS Code 的源代码对您来说还不够,您还想阻止人们使用打包的、包含遥测的版本,因为... 原因?我个人很感谢 MS 使其开源并围绕其编辑器建立了一个健康的生态系统。遥测技术?请便,我希望它能让编辑器变得更好。这种狂热主义让我想起了某人... 哦,替我向 RMS 问好。

开源的优势之一是存在无偿的替代方案。本文的重点不是阻止任何人使用微软的构建版本,而只是澄清微软发布的 VSCode 未获得 OSI 批准的许可,并且确实具有遥测技术和一些专有的扩展位。如果您正在寻找替代方案,本文(和许多评论)列出了几个。如果没有,您可以自由使用您喜欢的任何东西。如果开源没有这种灵活性,我会感到失望。

感谢您的阅读和评论!

回复 ,作者:impaque(未验证)

Bluefish

Sublime Text 怎么样?

这篇文章没有意义,vscode 仍然是开源的

您说对了一部分:VSCode 的源代码是可用的。您可以从源代码构建一个名为“Code -OSS”的应用程序,或者您可以下载其他人的构建版本(称为 VSCodium)。微软的构建版本包含遥测技术和一些非开源的扩展,因此它是在非 OSI 许可下获得许可的。

感谢您的阅读和评论!

回复 ,作者:Vinicios de Li…(未验证)

Apache NetBeans。它是一个非常棒的完全开源的 IDE。

它在我的可能的包含列表中,但我最终决定反对它,因为它的工作流程感觉与 VSCode 非常不同。正如我在之前的评论中所说,我认为有一种观点认为 VSCode 不认为自己是 IDE(即使有一些扩展可以帮助它像 IDE 一样工作),因此 Netbeans 完全是一个单独的类别。

回复 ,作者:Laszlo Kishalmi(未验证)

几乎尝试了所有这些,brackets 是一款小型应用程序,对我来说已经足够了。非常适合从头开始进行 Web 开发。
我使用专有软件进行应用程序开发。

我喜欢 Apache Netbeans。在 Apache 发布它之后,速度更快了,虽然没有 vsc 那么快。对于 php 和 js,我发现它更容易使用,并且可以轻松获得必要的功能

我也是 Netbeans 的粉丝。我最近一直在使用它进行 Java 开发,没有任何抱怨。

回复 ,作者:Vinu Felix(未验证)

我错过了 Kate(KDE 高级文本编辑器),它是一个很好的选择

很好的观察。Kate 是一款很棒的编辑器,很抱歉我没想到将其包括在内。

回复 ,作者:almaember(未验证)

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.