Sublime text和Github的Atom有什么区别[关闭]

本文翻译自:What is the difference between Sublime text and Github's Atom [closed]

Github announced Atom which is very similar to Sublime. Github宣布Atom与Sublime非常相似。 Even some keyboard shortcuts like ⌘ + P , ⌘ + Shift + P etc. are same. 甚至一些键盘快捷键如⌘+ P⌘+ Shift + P等也是相同的。

  1. How is Atom different from Sublime? Atom与Sublime的不同之处是什么?
  2. Does it include IDE features like build tools, function definition jumps, documentations, etc.? 它是否包括IDE功能,如构建工具,函数定义跳转,文档等?
  3. Has anyone using Sublime got a Beta invitation to point out the differences? 有没有人使用Sublime获得Beta邀请来指出差异?
  4. Can I use the themes, schemes and packages from Sublime as is, like Sublime could do with text mate . 我可以按原样使用Sublime中的主题,方案和包,就像Sublime可以使用文本配合一样

Atom Shell1 1

PS: Open image in new tab for bigger resolution. PS:在新标签页中打开图像以获得更大的分辨率。


#1楼

参考:https://stackoom.com/question/1Uq0E/Sublime-text和Github的Atom有什么区别-关闭


#2楼

Another difference is that Sublime text is a closed source project, while Atom source code is/will be publicly available --although Github does not plan to release it as a real open source project. 另一个区别是Sublime文本是一个封闭的源项目,而Atom源代码是/将公开可用 - 尽管Github不打算将其作为一个真正的开源项目发布。 They want to give access to the code, without opening it to contributions. 他们希望提供对代码的访问权限,而无需将其打开。

Github made the code public: http://blog.atom.io/2014/05/06/atom-is-now-open-source.html Github将代码公开: http//blog.atom.io/2014/05/06/atom-is-now-open-source.html


#3楼

Atom is written using Node.js, CoffeeScript and LESS. Atom是使用Node.js,CoffeeScript和LESS编写的。 It's then wrapped in a WebKit wrapper, which was originally only available for OSX, although there is now also a Windows version available. 然后将其包装在WebKit包装器中,该包装器最初仅适用于OSX,尽管现在还有Windows版本可用。 (Linux version has to be built from source, but there is a PPA for Ubuntu users.) (Linux版本必须从源代码构建,但Ubuntu用户有一个PPA。)

A lot of the architecture and features have been duplicated from Sublime Text because they're tried and tested. Sublime Text已经复制了许多体系结构和功能,因为它们经过了尝试和测试。 The plugin system works almost the same, but opens up a lot of new features and potential by exposing new APIs too. 插件系统的工作方式几乎相同,但通过公开新的API也开辟了许多新功能和潜力。

I believe that the shortcuts remain mostly the same due to muscle memory – people will remember them and be able to instantly click with Atom. 我相信由于肌肉记忆,快捷方式基本保持不变 - 人们会记住它们并能够立即点击Atom。

The preferences can be controlled with a GUI rather than by editing JSON directly, which might lower the entry barrier towards getting people started with Atom. 可以使用GUI控制首选项,而不是直接编辑JSON,这可能会降低让人们开始使用Atom的入门门槛。 I myself find it difficult to navigate them all since there is no search feature in Preferences. 由于“首选项”中没有搜索功能,我自己发现很难导航它们。

You can signup for an invite on the ##atom-invites IRC channel or signup to their website and add your email. 您可以在## atom-invites IRC频道上注册邀请或注册到他们的网站并添加您的电子邮件。 The first round of invites came quickly. 第一轮邀请来得很快。


#4楼

I just got my beta invitation today and tried Atom right away. 我今天刚收到我的测试版邀请,并立即尝试了Atom。 The GUI feels like Sublime, and yes, there some shortcuts adopted from Sublime. GUI感觉像Sublime,是的,有一些从Sublime采用的快捷方式。

Besides everything mentioned above, here are some differences I have noticed so far: 除了上面提到的一切,这里有一些我到目前为止注意到的差异:

  1. Vim mode is not as good as the Vintage mode on Sublime (which is not a fully featured vim either) because the vim package is in an early stage of development. Vim模式不如Sublime上的Vintage模式(这也不是一个功能齐全的vim),因为vim包处于开发的早期阶段。 See https://atom.io/packages/vim-mode for detail. 有关详细信息,请参阅https://atom.io/packages/vim-mode

  2. As James mention, Atom is written using web tools, so you have access to the stylesheet of the text editor (styles.less) to do whatever appearance changes you want using CSS. 正如James所说,Atom是使用Web工具编写的,因此您可以访问文本编辑器的样式表(styles.less)来使用CSS执行您想要的任何外观更改。 There is also an option to change the startup CoffeeScript. 还可以选择更改启动CoffeeScript。

  3. Again, because Atom is still in the beta stage, Sublime has much more native plugin packages. 同样,由于Atom仍处于测试阶段,Sublime拥有更多的原生插件包。 However, since Atom is written in Node.js, the Atom official site said you can "choose from over 50 thousand in Node's package repository." 但是,由于Atom是用Node.js编写的,Atom官方网站称你可以“从Node的软件包库中选择超过5万个”。 (Because I am not a Node.js pro, I haven't look into this feature though) (因为我不是Node.js专业版,但我没有考虑过这个功能)

  4. Atom has better Github support out of the box, but Sublime has a several Git packages. Atom有更好的Github支持开箱即用,但Sublime有几个Git包。

  5. Sublime is a paid application unlimited evaluation period. Sublime是付费申请无限期评估期。 Atom is free at the beta stage but we don't know whether Github wants to charge it or not. Atom在beta阶段是免费的,但我们不知道Github是否想要收费。

So the bottom line is Atom is a text editor built with web technology at beta stage. 因此,底线是Atom是一个在测试阶段使用网络技术构建的文本编辑器。 By contrast, Sublime has evolved through many different iterations. 相比之下,Sublime已经通过许多不同的迭代进化而来。 Atom is still missing a lot of packages that Sublime supports, so the question is will Atom catch up with Sublime or become some better? Atom仍然缺少Sublime支持的很多软件包,所以问题是Atom会赶上Sublime还是变得更好? Github seems to be confident about the future of this text edit because of its popular underlying technologies, and Atom is probably going to be a good alternative to Sublime in the long run. 由于其流行的底层技术,Github似乎对此文本编辑的未来充满信心,从长远来看,Atom可能是Sublime的一个很好的替代品。


#5楼

In addition to the points from prior answers, it's worth clarifying the differences between these two products from the perspective of choices made in their development. 除了先前答案的要点之外,从它们的开发选择的角度来澄清这两种产品之间的差异是值得的。

Sublime is binary compiled for the platform. Sublime是为平台编译的二进制文件。 Its core is written in C/C++ and a number of its features are implemented in Python, which is also the language used for extending it. 它的核心是用C / C ++编写的,它的许多功能都是用Python实现的,它也是用于扩展它的语言。 Atom is written in Node.js/Coffeescript and runs under webkit, with Coffeescript being the extension language. Atom是用Node.js / Coffeescript编写的,在webkit下运行,Coffeescript是扩展语言。 Though similar in UI and UX, Sublime performs significantly better than Atom especially in "heavy lifting" like working with large files, complex SnR or plugins that do heavy processing on files/buffers. 虽然UI和UX类似,但Sublime的性能明显优于Atom,尤其是在“繁重的工作”中,例如处理大文件,复杂的SnR或对文件/缓冲区进行大量处理的插件。 Though I expect improvements in Atom as it matures, design & platform choices limit performance. 虽然我希望Atom在成熟时有所改进,但设计和平台选择限制了性能。

The "closed" part of Sublime includes the API and UI. Sublime的“封闭”部分包括API和UI。 Apart from skins/themes and colourisers, the API currently makes it difficult to modify other aspects of the UI. 除了皮肤/主题和颜色,API目前很难修改UI的其他方面。 For example, Sublime plugins can't interact with the sidebar, control or draw on the editing area (except in some limited ways eg. in the gutter) or manipulate the statusbar beyond basic text. 例如,Sublime插件不能与侧边栏交互,控制或绘制在编辑区域上(除了以某种有限的方式,例如在排水沟中)或操纵状态栏超出基本文本。 Atom's "closed" part is unknown at the moment, but I get the sense it's smaller. Atom的“封闭”部分目前尚不清楚,但我觉得它更小。 Atom has a richer API (though poorly documented at present) with the design goal of allowing greater control of its UI. Atom拥有更丰富的API(尽管目前记录不完整),其设计目标是允许更好地控制其UI。 Being closely coupled with webkit offers numerous capabilities for UI feature enhancements not presently possible with Sublime. 与webkit紧密结合,为Sublime目前无法实现的UI功能增强提供了许多功能。 However, Sublime's extensions perform closer to native, so those that perform compute-intensive, highly repetitive or complex text manipulations in large buffers are feasible in Sublime. 但是,Sublime的扩展更接近原生,因此那些在大型缓冲区中执行计算密集型,高度重复性或复杂文本操作的扩展在Sublime中是可行的。

Since more of Atom will be open, Github open-sourced Atom on May 6th. 由于更多Atom将开放, Github将于5月6日开源Atom。 As a result it's likely that support and pace of development will be rapid. 因此,支持和发展速度可能很快。 By contrast, Sublime's development has slowed significantly of late - but it's not dead . 相比之下,Sublime的发展最近显着放缓 - 但它并没有死亡 In particular there are a number of bugs, many quite trivial, that haven't been fixed by the developer. 特别是有一些错误,许多是非常微不足道的,没有被开发人员修复。 None are showstopping imo, but if you want something in rapid development with regular bugfixing and enhancements, Sublime will frustrate. 没有一个是showstopping imo,但是如果你想通过常规的bug修复和增强来快速开发,Sublime会让人感到沮丧。 That said, installable Atom packages for Windows and Linux are yet to be released and activity on the codebase seems to have cooled in the weeks before and since the announcement, according to Github's stats. 据Github的统计数据显示,Windows和Linux的可安装Atom软件包尚未发布,代码库上的活动似乎在宣布之前和之后的几周内已经冷却。

In terms of IDE functions, from a webdev perspective Atom will allow extensions to the point of approaching products like Webstorm, though none have appeared yet. 就IDE功能而言,从webdev的角度来看,Atom将允许扩展到接近像Webstorm这样的产品,尽管还没有出现过。 It remains to be seen how Atom will perform with such "heavy" extensions, since the editor natively feels sluggish. 由于编辑本身感觉迟钝,Atom将如何执行这种“重”扩展还有待观察。 Due to restrictions in the API and lack of underlying webkit, Sublime won't allow this level of UI customisation although the developer may extend the API to support such features in future. 由于API的限制和缺乏底层webkit,Sublime将不允许这种级别的UI自定义,尽管开发人员可能会扩展API以支持此类功能。 Again, Sublime's underlying performance allows for things that involve computational grunt; 同样,Sublime的基本性能允许涉及计算咕噜声的事情; ST3's symbol indexing being an example that performs well even with big projects. ST3的符号索引是一个即使在大型项目中表现良好的例子。 And though Atom's UI is certainly modelled upon Sublime, some refinements are noticeably missing, such as Sublime's learning panels and tab-complete popups which weight the defaults in accordance with those you most use. 虽然Atom的用户界面肯定是以Sublime为蓝本的,但是一些改进明显缺失,比如Sublime的学习面板和制表符完整的弹出窗口,它们根据你最常用的那些加权默认值。

I see these products as complementary. 我认为这些产品是互补的。 The fact that they share similar visuals and keystrokes just adds to the fact. 他们共享相似的视觉效果和击键的事实只会增加事实。 There will be situations where the use of either has advantages. 在某些情况下,使用任何一种都有优势。 Presently, Sublime is a mature product with feature parity across all three platforms, and a rich set of plugins. 目前,Sublime是一款成熟的产品,在所有三个平台上都具有功能平等,并提供丰富的插件。 Atom is the new kid whose features will rapidly grow; 原子是一个新的孩子,其特征将迅速增长; it doesn't feel production ready just yet and there are concerns in the area of performance. 它还没有感觉到生产准备就绪,并且在性能方面存在顾虑。

[Update/Edit: May 18, 2015] [更新/编辑:2015年5月18日]

A note about improvements to these two editors since the time of writing the above. 关于自编写上述内容以来对这两位编辑的改进的说明。

In addition to bugfixes and improvements to its core, Atom has experienced a rapid growth in third-party extensions, with autocomplete-plus becoming part of the standard Atom distribution. 除了错误修正和对其核心的改进之外,Atom还经历了第三方扩展的快速增长,自动完成加成为标准Atom发行版的一部分。 Extension quality varies widely and a particular irritation is the frequency by which unstable third party packages can crash the editor. 扩展质量差异很大,特别恼人的是不稳定的第三方软件包可能导致编辑器崩溃的频率。 Within the last year, Atom has moved to using React by way of shifting reflow/repaint activity to the GPU for performance reasons, significantly improving the responsiveness of the UI for typical editing actions (scrolling, cursor movement etc.). 在去年,由于性能原因,Atom已经开始使用React将回流/重绘活动转移到GPU,从而显着提高了UI对典型编辑操作(滚动,光标移动等)的响应能力。 While this has markedly improved the feel of the editor, it still feels cumbersome for CPU intensive tasks as described above, and is still slow in startup. 虽然这显着改善了编辑器的感觉,但对于如上所述的CPU密集型任务仍然感觉很麻烦,并且在启动时仍然很慢。 Apart from performance improvements, Atom feels significantly more stable across the board. 除了性能改进之外,Atom感觉全面稳定。

Development of Sublime has picked up again since Jan 2015, with bugfixes, some minor new features (tooltip API, build system improvements) and a major development in the form of a new yaml-based .sublime-syntax definition (to eventually replace the old xml .tmLanguage). 自2015年1月以来,Sublime的开发再次出现,包括错误修正,一些小的新功能(工具提示API,构建系统改进)以及基于yaml的.sublime语法定义(以最终取代旧版本)形式的主要开发xml .tmLanguage)。 Together with a custom regex engine which replaces Onigurama, the new system offers more potential for precise regex matching, is significantly faster (up to 4x) and can perform multiple matches in parallel. 与替代Onigurama的自定义正则表达式引擎一起,新系统为精确的正则表达式匹配提供了更多潜力,显着更快(高达4倍)并且可以并行执行多个匹配。 Apart from colouring syntax, Sublime uses these components for symbol indexing (goto definition etc.) and other language-aware features. 除了着色语法之外,Sublime还使用这些组件进行符号索引(goto定义等)和其他语言感知功能。 In addition to further speeding up Sublime, particularly for large files, this feature should open up the potential for performant language-specific features such as code-refactoring etc.. Further 'big developments' are promised, though the author remains, as ever, tight lipped about them. 除了进一步加速Sublime之外,特别是对于大型文件,此功能应该开辟了高性能语言特性的潜力,例如代码重构等。进一步的“重大发展”得到承诺,尽管作者仍然如此,紧紧抓住他们。


#6楼

I tried Atom and it looks really nice BUT there is one major problem (at least in v 0.84): 我尝试了Atom,它看起来非常好但是有一个主要问题(至少在v 0.84中):

It doesn't support vertical select Alt +Drag - this is a must for every modern code editor. 它不支持垂直选择Alt + Drag - 这是每个现代代码编辑器必须的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章