2019独角兽企业重金招聘Python工程师标准>>>
这些年来,编写代码本身已经成为一种艺术。现在,有大量的编程语言可供开发者选择使用,从汇编语言到 Ruby 和 Python。尽管对于给定的项目有许多编程语言可供选择,但有一件事是亘古不变的,每个开发者都需要一个代码编辑器来写代码。
一个好的代码编辑器不仅仅是一个简单的文本编辑工具,这是发生奇迹的地方,开发者编写的代码会转化为更大的项目的可用组件。鉴于这一重要性,难怪开发者会对与他们日夜共处的代码编辑器如此挑剔。每个开发者都希望拥有一个快速、易于使用且功能均衡的代码编辑器。
每个代码编辑器都会声称自己是最好的,然而你需要的可能只是唯一一款代码编辑器。下面是一些主流的、好评度高的代码编辑器,各位开发者不妨看看是否有适合自己的。
0. Vim
Vim 是最流行的代码编辑器之一。它是免费开源且跨平台的,称它为代码编辑器中最为优秀经典的上古神器也不为过。尤其是在 Linux 开发者中,它享有相当高的声誉。Vim 高度可定制,还可在 Dos 中运行。
在刚入门开发的群体中 Vim 可能不会十分流行,因为它的入门学习曲线陡峭。下面是 Vim 附带的一些功能:
- 集成的 UI
- 支持超过 200 种语言的语法高亮
1. Light Table
Light Table 是另一个免费开源的代码编辑器,它有一个非常简洁干净的界面,以及大量的扩展。Light Table 同样与 Windows, Mac 和 Linux 这几个主流平台兼容,并且高度可定制。
使用 Light Table,用户可实时看到发生的变化。该编辑器十分轻量,并且支持不同的嵌入。Light Table 致力于打造一个易于上手,但同样适合工作的强大的编程环境。
2. Chocolat
Chocolat 是 Mac 平台上一款强大的代码编辑器,兼容原生的 Cocoa 及具有强大的文本编辑功能。Chocolat 旨在与系统无缝集成,它支持许多编程语言的语法高亮。Chocolat 为 JavaScript, Python 和 HTML 文件提供拖拽功能,只需要拖拽文件或者文件夹到软件界面即可。Chocolat 还支持窗口分割、标签页、色彩主题等功能。界面和 MacVim 非常相似。
一些其他的功能:
- 项目搜索和更换
- 实时错误检测
3. Notepad++
Notepad++ 有许多理由成为开发者首选的代码编辑器,这个轻量级的代码编辑器是免费开源的,速度很快且占用极少的资源,即便如此,但其功能并不马虎,开发者想要的功能几乎都有了。最好的一点是这个代码编辑器是新手和老鸟们的理想选择。
该编辑器支持的编程语言基本涵盖了开发者在开发中使用的全部语言,Notepad++ 的一些亮点特性:
- 语法高亮
- 支持 FTP
- 外部插件
- 跨平台的兼容性
- 代码和文本折叠
- 集成编译器
4. Visual Studio Code
Visual Studio Code (简称 VS Code/VSC) 是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流编程语言的语法高亮,支持插件扩展,并针对网页开发和云端应用开发做了优化。软件跨平台支持 Windows、Mac 以及 Linux,运行流畅。
Visual Studio Code 还有以下特性:
- 智能代码补全
- 自定义热键
- 括号匹配
- 代码片段
- 代码对比
- 支持 Git 等特性
5. Sublime Text
如果您正在寻找一款轻量且性能优秀的代码编辑器,Sublime Text 是您的不二选择。这个跨平台的代码编辑器外观惊艳,表现也非常出色,虽然是收费软件,但可以无限期试用。
Sublime Text 提供了许多优秀的功能:
- 提供外部插件的安装包
- 支持 Python 脚本
- 高度可定制的界面
- 即时的文件切换
- 语法和错误检测
- 多行选择和编辑
- 代码自动补全
- 丰富的主题
6. TextWrangler
TextWrangler 可能是 Mac 平台上最好的代码编辑器,它支持 44 种编程语言,包括 JavaScript, Python, HTML, SQL 等。TextWrangler 出身名门 Bare Bones Software,虽轻量却不失全能:语法高亮、智能搜索、代码折叠等等针对文本的批处理功能都有提供。
作为 BBedit 的后继,它在功能上做了一些精简,缺少 Markup,Clippings 功能,略有遗憾。但免费的优势让它同样成为不少开发者的首选,程序界面清爽简单,只有常用功能,FTP/SFTP/AppleScript/Mac OS UNIX 脚本之类高级功能藏在菜单里。
TextWrangler 能轻松处理大体积的源代码文件,提供了广泛的功能,包括:
- 支持插件和宏
- 安全的 FTP
- 支持 SSH
- 语法高亮
- 自动完成
- 拼写检查
7. Atom
GitHub 是全球最大的代码托管平台,然而它的开发者们并不满足于此。他们使用最先进流行的技术打造了一款称为“属于 21 世纪”的代码编辑器 —— Atom。Atom 免费开源且跨平台,整合了 Git 并提供类似于 SublimeText 的包管理功能,有丰富的插件扩展,可配置性非常高。不过也有不少用户吐槽它的臃肿和卡顿。
尽管是免费软件,但 Atom 依然提供了几个关键重要的功能,包括:
- 内置包管理工具
- 可定制的主题
- 支持命令面板
- 与 GitHub 集成
8. Coda
Code 是 Mac 平台上的一款代码编辑器,追求速度和稳定性的开发者应该会喜欢它。Coda 主打是面向 Web 开发者、网页设计师的编辑器。Coda 不但轻巧,而且功能强大。它整合了终端、文字编辑器、CSS 编辑器、内容发布(结合了 Transmit 的 FTP Client 功能)等整个 Web 开发流程所需的工具。Code 是收费软件,提供 7 天免费使用的试用版。
Coda 提供了一系列强大的功能,包括:
- 内置调试器
- 本地终端
- Leopard GUI
- 代码自动补全
- 支持大体积文件
9. Text Mate
Text Mate 是 Mac 平台上另一个流行的代码编辑器,因在 Ruby 和 RoR 社区中而声名大噪。事实上,支持的完整语言列表囊括了所有主要的和次要的编程语言。这个编辑器基本版免费,完整版则需要付费使用。
Text Mate 与 BBEdit 一起并称苹果机上的 Emacs 和 Vim。尤其适合开发者使用,可以定制许多贴心使用的功能。
Text Mate 提供了许多功能,包括:
- 支持 FTP
- 支持 Xcode
- 语法高亮
- 支持可折叠代码块
- 列选择和键入
- 代码自动补全
10. jEdit
jEdit 自称是为严谨的程序员打造的一款严谨编辑器。它是一款使用 Java 开发的开源项目(可自由使用),在 GPL 许可证下发布。它可以在 Windows、Linux、Mac 等多种平台下运行,并且有很多插件,可以扩充基本功能。它也支持 80 多种文件类型的语法高亮显示。支持包括 UTF-8 在内的多种字符编码。
jEdit 有很方便的宏定义功能,可以用 BeanShell、Jython 和 JavaScript 等脚本语言。
除了支持 100+ 的插件和宏,还有一些精彩的功能:
- 通过第三方插件集成编译器
- 支持 FTP 与集成 FTP 的浏览器
- 拼写检查
11. BBEdit
也称为 Bare Bone Edit,该代码编辑器仅支持在 Mac 平台上使用,可以让您轻松搜索,操作和编辑代码。 试用版免费下载使用,完整版本需要付费。
智能接口让 BBEdit 具有一流的功能,包括 grep 匹配,搜索和替换多个文件,项目定义的工具,功能导航和众多编程语言的语法高亮,代码折叠,FTP 和 SFTP 打开和保存,AppleScript 以及 Mac OS X 的 Unix 的脚本支持,代码自动补全,还有一个强大的 HTML 工具配套。
BBEdit 提供以下功能:
- 代码自动完成
- 可分割的编辑窗口
- 语法高亮显示
12. Araneae
Araneae 仅支持在 Windows 上使用,因其干净简单的界面而被大众所知,它的简洁性让开发者能轻松编写代码。Araneae 是完全免费的软件。
提供了以下的功能:
- 支持流行的编程语言,包括 HTML,CSS,PHP,Rails,XHTML 等
- 支持 jEdit 等多个实例
13. UltraEdit
UltraEdit 是 Windows 平台上的代码编辑器,尽管 UltraEdit 不是一款开源软件,而且需要付费,但它应该是最为强大的一款代码编辑器了,它支持几乎所有主流的编程语言,包括 JavaScript,HTML,Perl,C/C++ 和 PHP。可以编辑文本、十六进制、ASCII 码,完全可以取代记事本(如果电脑配置足够强大),内建英文单字检查、C++ 及 VB 指令突显,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。还支持代码折叠和宏。
这款代码编辑器包含开发者喜爱的功能,如:
- 与 SSH 集成
- 语法高亮显示
- 多选代码
- 可编辑的列和块
- 支持 FTP
14. Emacs
Emacs 是著名的集成开发环境和代码编辑器。Emacs 被公认为是最受专业程序员喜爱的代码编辑器之一。Emacs 具有强大的可扩展性,在程序员和其他以技术工作为主的计算机用户中广受欢迎。最初由 Richard Stallman 于 1975 年在 MIT 协同盖伊·史提尔二世共同完成。
此外 Emacs 还有如下特点:
- 实时编辑器
- Self-documenting
- 可定制性
- 可扩展性(集成 Lisp 语言)
欢迎大家在评论区分享或补充自己使用的编辑器~