Ace:浏览器端的代码编辑器,27k Star 的老牌开源项目

📅 2026/7/2 11:25:48
Ace:浏览器端的代码编辑器,27k Star 的老牌开源项目
文章目录Ace浏览器端的代码编辑器27k Star 的老牌开源项目Ace浏览器端的代码编辑器27k Star 的老牌开源项目Ace 是一个用 JavaScript 编写的独立代码编辑器在 GitHub 上获得了 27,000 的 Star。它的目标是在浏览器中提供一个功能和性能都能媲美原生编辑器的代码编辑环境支持 TextMate、Vim、Eclipse 等编辑器的特性。目前它是 Cloud9 IDE 的核心编辑器也是 Mozilla Skywriter 项目的继任者。功能特性Ace 的语法高亮支持超过 120 种编程语言可以直接导入 TextMate 和 Sublime 的语法定义文件。编辑器内置了 20 多个主题还能加载 .tmtheme 文件自定义外观。在处理能力上Ace 可以应对大型文档测试过的上限是 400 万行代码。对于日常开发中的项目文件这个容量绰绰有余。键绑定方面Ace 提供了完整的自定义能力内置了 Vim 和 Emacs 模式对习惯这些编辑器的用户来说可以直接上手。其他功能包括代码折叠、多光标编辑、实时语法检查、正则表达式搜索替换、拖拽文本编辑、软硬 Tab 切换、隐藏字符显示、行内换行等。它还支持通过 ace-linters 扩展更多语言的智能补全和错误提示。嵌入方式Ace 可以嵌入任何网页。最简单的方式是引入 ace.js 文件然后用几行 JavaScript 代码初始化编辑器div ideditorsome text/div script srcsrc/ace.js/script scriptvar editor ace.edit(editor);/script也可以通过 npm 安装 ace-builds 包或者用 requireJS 按需加载模块。编辑器需要一个有明确尺寸的 DOM 元素作为容器设置为 relative 或 absolute 定位即可。主题和语言模式通过加载对应的 JS 文件来启用整个过程不需要额外的构建工具。切换主题只需引入主题文件并调用 setTheme 方法切换语言模式也是类似的流程。编辑器销毁时调用 destroy 方法并移除容器元素就行。安装运行Ace 开箱即用不需要构建步骤。克隆仓库后用 Node.js 启动自带的 HTTP 服务器就能在浏览器中打开 kitchen-sink 演示页面体验全部功能。如果需要自行构建安装 npm 依赖后运行构建脚本即可。构建工具支持压缩、命名空间处理等选项也能输出到指定目录供其他项目使用。测试方面Ace 的单元测试可以在 Node.js 中直接运行也可以通过浏览器访问测试页面来调试浏览器环境下定位失败用例更方便。许可证与社区Ace 使用 BSD 许可证发布对开源和商业项目都很友好。社区活跃鼓励开发者提交代码贡献添加自己需要的语言高亮和键绑定。开源和商业项目都很友好。社区活跃鼓励开发者提交代码贡献添加自己需要的语言高亮和键绑定。