Github Atom开源文本代码编辑器- 由 Github 打造的下一代编程开发利器
通过 Electron 可以方便的打造基于Web,跨平台的Desktop应用。基于Web的native的接口,得益于io.js的封装,让本来没有本地权限的web能有原生native的权限,Chromium是呈现Web的跨平台基础,这样的完美结合,我们可以将HTML5 CSS JavaScript(AngularJS, React, BootStrap.....)技术完全应用到Native
desktop app上面,可以看到我们在用这些app的时候完全没有感觉是web的应用,性能特别好。
概述与跨平台应用 --atom的兄弟
Atom在代码编辑器、文本编辑器领域,有着不少的「神器」级的产品,如历史悠久的 VIM、Emacs
以及如今当红的 SublimeText。另外还有 VSC、EditPlus、NotePad++、UltraEdit等一大堆流行的利器,可谓百家争鸣。
然而,作为目前全球范围内影响力最大的代码仓库/开源社区,GitHub 的程序员们并不满足于此。他们使用目前最先进流行的技术重新打造了一款称为“属于21世纪”的代码编辑器——Atom, 它开源免费跨平台,并且整合 GIT 并提供类似 SublimeText 的包管理功能,支持插件扩展,可配置性非常高……
ATOM - 由 GitHub 打造更为先进的编辑器
Atom 代码编辑器支持 Windows、Mac、Linux 三大桌面平台,完全免费,并且已经在
GitHub 上开放了全部的源代码。在经过一段长时间的迭代开发和不断改进后,Atom 终于从早期的测试版达到了 1.0 正式版了!相比之前的版本,在性能和稳定性方面都有着显著的改善。
开发团队将 Atom 称为一个“为 21 世纪创造的可配置的编辑器”,它拥有非常精致细腻的界面,并且可配置项丰富,加上它提供了与 SublimeText 上类似的
Package Control (包管理)功能,人们可以非常方便地安装和管理各种插件,并将 Atom 打造成真正适合自己的开发工具。
Atom 编辑器官方宣传片:
这里不知道怎么插入视频~~直接插链接了 点击--》 Atom官方宣传片
一个拥有丰富功能的现代化代码编辑器/文本编辑器
作为一个现代的代码编辑器,Atom 有着各种流行编辑器都有的特性,功能上非常丰富,支持各种编程语言的代码高亮(HTML / CSS / Javascript / PHP /
Python / C / C++ / Objective C / Java / JSON / Perl / CoffeeScript / Go / Sass / YAML / Markdown 等等)、
与大多数其他编辑器相比,Atom的语言支持已经算是覆盖非常全面了。另外,它的代码补全功能(也叫Snippets) 也非常好用,你只需输入几个字符即可展开成各种常用代码,可以极大提高编程效率。
另外,Atom同样支持 SublimeText 的几个重要的功能,譬如 Goto Anything、Goto Symbol、Goto Line、命令面板等等,就连快捷键也是一模一样的!相信
ST 的用户将会比较轻松地过渡到 Atom 去。实际上,从功能上来看,目前的 Atom 编辑器基本就是 Sublime 的一个复刻版,只是技术实现方式不同,插件的技术也有所差异。
和 GIT 完美结合工作
Atom 编辑器可以和
GIT 完美结合,所有对代码、文本的修改都能体现在编辑器的界面上。比如在文件内新写的代码会在左边标记为绿色,删除的标记为红色,修改的标记为黄色。在左边的目录导航也能方便的看到文件改动:有改动的文件其文件名和所在文件夹名都会被标记为高亮显示。编辑器底部会显示当前所在分支和对文件的修改行数统计,对于 GIT 用户来说非常方便。
基于 WEB 技术构建
和之前介绍过的微软 Visual
Studio Code 编辑器一样,Atom 也是基于 WEB 技术(Chromium+Node.js)开发的,简单理解的话编辑器本身其实是一个跑在本地的网页,这足以让无数
WEB 工程师为之兴奋!用户可以用Javascript来编写编辑器插件,用 CSS把主题界面改成任何你喜欢的样式等,这使得编写插件、主题、二次开发的门槛的降低了许多。这也能解释从
Atom 发布到现在不长的时间里,Atom的 Package 和主题数量都快速增长上来了。
不过,也正因为它基于WEB
技术构建的,目前处于初步阶段的 Atom 在性能上与传统的编辑器还有点差距,在打开大文件时尤为明显,而在一些机器上也容易出现 CPU 占用率过高等问题,这一点确实有待改进,而且还是需要大幅改进。
Atom 编辑器到底怎么样?
那么,很多人关心的是,Atom 与主流的编辑器对比会怎么样?其实,在我看来, Atom 目前还不太适合用做主力编辑器,虽然它的功能与 SublimeText 较为接近,但现在的它和 Sublime 相比还是稚嫩了一点,毕竟现在Sublime 已经非常成熟了,后者有很全面的内置功能,也有非常丰富的插件包和活跃的社区,而 Atom 则还需给予时间让其发展。
不过由于 Atom 是由 Github 维护的,它拥有非常强大的后台。并且那里有着大量极为优秀的编程爱好者,也是极客们的聚集地,相信在不久的将来Atom一定也会拥有不少新的插件包,而性能方面的缺点迟早也会被解决掉。
对于喜欢追求新鲜技术的极客和程序员们,Atom 肯定将会是你的一个不错的新玩物,毕竟它是开源社区的产物,并且也代表着 WEB 技术进入桌面程序开发的新方向。纵使目前它还有不少的进步的空间,但一旦它解决了性能问题、建立了丰富强大的插件库,开源且跨平台的 Atom 编辑器将会成为业界新宠。
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Github Atom开源文本代码编辑器- 由 Github 打造的下一代编程开发利器的更多相关文章
- ACE 1.1.9 发布,开源云端代码编辑器
点这里 ACE 1.1.9 发布,开源云端代码编辑器 oschina 发布于: 2015年04月06日 (1评) 分享到: 收藏 +25 4月18日 武汉 源创会开始报名,送华为开发板 ACE ...
- Win764位配置Github环境及将代码部署到Github pages-志银强势总结
(软件及教程下载分享:链接:http://pan.baidu.com/s/1dFysay9 密码:pug0) 1-安装Git-2.9.2-64-bit.exe(解压安装文件,运行安装程序,除了记得修改 ...
- 【志银】Win764位配置Github环境及将代码部署到Github pages-志银强势总结
(软件及教程下载分享:链接:http://pan.baidu.com/s/1dFysay9 密码:pug0) 1-安装Git-2.9.2-64-bit.exe(解压安装文件,运行安装程序,除了记得修改 ...
- 代码编辑器[0] -> Vim/gVim[3] -> 像编程一样使用Vim
像编程一样使用Vim 目录 为什么是Vim / Why Vim 从hjkl开始上路 -- 使用基本按键进行移动和编辑 / Start from <hjkl> 一次超速和翻车的体验 -- 使 ...
- Python 开发的 IDE 和代码编辑器,你选择的哪一个?
为了方便,我会分两个大类去说明,一类是适用于软件开发的比较通用的编辑器或 IDE ,我们可以通过插件等形式支持 Python 的开发,另一个是专注于 Python 开发的编辑器或 IDE . 不过在此 ...
- 介绍linux下Source Insight强大代码编辑器sublime_text_3
背景 1 一. 运行环境 1 二.安装环境配置 1 三.创建快捷方式 1 四.配置全局环境 2 五.操作界面 3 背景 在windows操作系统系统下,文本代码编辑器众多,各路英雄豪杰争相写了许多强大 ...
- 代码编辑器——Visual Studio Code
一.介绍 Visual Studio Code(简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮.智能代码补全.自定义热键.括号匹配.代 ...
- Python代码编辑器
PyCharm Community 说到PyCharm Community,我们就会想到它是一款免费的开源Python代码编辑器,不过这也是事实啦.PyCharm Community为我们提供了轻量级 ...
- 集成代码编辑器ACE的经验
ACE是最流行的在线代码编辑器之一,在CanTK的集成开发环境GameBuilder里也使用了ACE.ACE的功能非常强大,但是由于使用方法不当,大家反映GameBuilder的代码编辑器不好用.最近 ...
随机推荐
- jmeter出现卡死或内存溢出的解决方案
故事背景:在初次使用jmeter的时候,把线程设置较大值的时候,jmeter工具很容易就卡死了,导致每次做压测的时候都无法顺利完成,非常的闹心,通过各种方法寻找解决方案,终于找到了一个比较靠谱的方法, ...
- tarjan——cogs 1298 通讯问题
1298. 通讯问题 ★ 输入文件:jdltt.in 输出文件:jdltt.out 简单对比 时间限制:1 s 内存限制:128 MB [题目描述] 一个篮球队有n个篮球队员,每个队员 ...
- 素数密度_NOI导刊2011提高(04)
题目描述 给定区间[L, R](L <= R <= 2147483647,R-L <= 1000000),请计算区间中素数的个数. 输入 两个数 L 和 R. 输出 一行,区间中素数 ...
- bzoj 4870: [Shoi2017]组合数问题
Description Solution 考虑这个式子的组合意义: 从 \(n*k\) 个球中取若干个球,使得球的数量 \(\%k=r\) 的方案数 可以转化为 \(DP\) 模型,设 \(f[i][ ...
- Uva 11400 照明系统
有一个照明系统需要用到n种灯,每种灯的电压为V,电源费用K,每个灯泡费用为C,需要该灯的数量为L.注意到,电压相同的灯泡只需要共享一个对应的电源即可,还有电压低的灯泡可以被电压高的灯泡替代.为了节约成 ...
- 零开始:NetCore项目权限管理系统:基础框架搭建
有兴趣的同学可以一起做 喜欢NetCore的朋友,欢迎加群QQ:86594082 源码地址:https://github.com/feiyit/SoaProJect 新建一个空的解决方案,建立对应的解 ...
- A Problem-Solving FlowChart || 如何解决编程问题
This is from book Cracking the coding interview, Gayle Laakmann Mcdowell. The flowchart can be used ...
- Python3 运算符
装载自:https://www.cnblogs.com/cisum/p/8064222.html Python3 运算符 什么是运算符? 本章节主要说明Python的运算符.举个简单的例子 4 +5 ...
- 基于Spark环境对比Python和Scala语言利弊
在数据挖掘中,Python和Scala语言都是极受欢迎的,本文总结两种语言在Spark环境各自特点. 本文翻译自 https://www.dezyre.com/article/Scala-vs-Py ...
- C语言第五次作业——循环结构
C语言程序设计第五次作业--循环结构(1) (一)改错题 输出华氏摄氏温度转换表:输入两个整数lower和upper,输出一张华氏摄氏温度转换表,华氏温度的取值范围是{lower,upper},每次增 ...