[翻譯]Atom來了

原文地址:http://code.tutsplus.com/tutorials/check-out-atom-githubs-new-development-editor--net-37030javascript

最近彷佛沒有什麼新的編輯器出現讓人耳目一新的。
最近一次在web開發社區掀起熱潮的應該就是Sublime Text,
以及它方便的包管理工具Package Control了。html

嗯,不過Github彷佛是想要經過Atom來改變下編輯器軟件的平靜的現狀。
目前筆者用的是Beta版Atom,本文也只會給出對Atom作大概的一個介紹。
還有要注意的就是,目前Atom的文檔也還不完善,
有些feature最後會是怎麼還不能肯定,因此本文也只是講一些重要的功能java

21世紀geek編輯器

首先筆者要強調的是目前Atom只是一個beta版本,
之後到底會有多少功能保留或者加入誰都說不許。
好比我如今還沒找到一個基於目錄建立項目的方法,並且也很想要這個功能。
可是目前做爲beta版本的ATOM仍是讓我很滿意的。node

接下來要說的是,ATOM是徹底基於web技術實現的。底層的架構是基於Chromium
(是的就是google的Chrome的Chromium),全部的窗口都是一個本地渲染的網頁。
有人會問,爲何不直接像Cloud9IDE作一個基於瀏覽器的編輯器呢?
雖然目前來看瀏覽器文件操做相關的API有了必定的發展,可是仍然有不少的限制。
因此採用桌面應用程序的方式仍是有必要的。git

是的,你沒看錯,在Atom中調用Chromium開發工具,
我還選中了一個DOM元素,更詭異的事是,
還能在Chromium開發工具裏面修改代碼。這也印證了ATOM是基於Web的。程序員

ATOM還採用了node.js來訪問文件系統和包管理。
這樣就讓Atom的包管理具備很強的靈活性和可擴展性。
面對浩如煙好的npm資源,ATOM的可配置型也變得異常突出。github

最後這句話可能最能說明Atom團隊爲何要採用Web技術。web

整個計算機產業都在給力的推進web技術發展,
因此咱們頗有信心將Atom植根於這片的肥沃的土壤中。
原生UI技術起起落落,而web技術在每一年的變化中變得愈來愈可靠和廣泛。
咱們很高興咱們能在web技術領域繼續深刻。npm

初見Atom,估計確定會以爲它是sublime text的堂兄弟,
Sublime中外貌協會的同窗估計會對他一見鍾情。segmentfault

固然,程序員第一要關心仍是是支持的語言。筆者雖然目前主要工做在javascript上,
可是也很想嘗試下ruby on rails,因此能支持的語言越多好。
Atom不只支持Ruby的語法高亮,還支持RoR,還有:

  • Python
  • CoffeeScript
  • Go
  • Sass
  • YAML

等等

Atom不只僅支持語法高亮,還有對應語法的Snippet。

以上面的Javascript舉個例子,
在編輯器裏面輸入ife而後再按tab鍵,ife就能擴展爲

if (true) {

} else {

}

輸入f而後tab,就會展開成一個匿名函數的定義

function () {
}

相似的功能TextExpander和其餘一些編輯器也有,
很高興Github加入了這個功能。

輕鬆可配置

Sublime text(包括V3)都很讓我抓狂的一件事情就是須要手動調整不少配置
(譯者:並且是一個配置文件形式配置很是不直觀)。
在Atom裏面就,將全部的配置信息放在一個面板裏面,主要的配置項

  • 字體、大小
  • 行號
  • 主題
  • 包管理

還在能配置頁中激活或者禁用一個包。

個性化編輯器是每一個碼農都要乾的事情,
給每日相對的編輯器選一個本身喜歡的主題就很是的重要。
Atom自帶5個主題,亮暗都有;並且經過包管理你擴展你選擇。

看到"Monokai",是否是很開心啊!

還記不記得我剛纔提過能在Atom裏面使用chromium的開發者工具,
Atom的每一個頁面都是一個本地渲染的網頁。
嘿嘿,那就行了,你有超多的方法來改變頁面中外觀,
在開發者工具裏面能查看頁面中的DOM元素的樣式。
經過修改styles.less來定義本身的樣式,這樣你就控制每類元素的展示方式。
要修改styles.lee也很是簡單,Atom->Open Your Stylesheet,而後編輯就好了。

.editor {
  .meta.tag.sgml.doctype.html { font-size: 26px; }
}

這個例子裏面,筆者將.editor類下的DOCTYPE的字體設置爲26px
那實際頁面看起來是這樣的。

經過修改樣式文件就能更加隨意的修改編輯器的樣子了。

Atom中的包管理工具除了可以安裝主題以外,還能安裝插件來擴展Atom。
這個和sublime中的 package control很像,可是Atom是直接自帶了一個包管理工具,
不須要像Sublime Text同樣用個腳原本安裝。

點擊安裝按鈕,Atom就提供了一些'精選'的插件,
經過輸入框還能到包管理中心搜索你想要的包。

apm install <package name>

若是你喜歡命令行,那就試試apm(Atom Package Manager)。
下面是安裝autocomplete的例子

目前的話,Atom中的擴展包數量還很是有限

但一些必要的包仍是能找到的,好比

我想Github很快就讓不少Sublime text包的做者將本身開發的包移植到Atom中。
並且如今已經有文檔
說能將TextMate的bundle移植到Atom中。而Textmate的bundle和Sublime是兼容的,
因此估計sublime的包也能很方便的一直到Atom中。
不過別太當真,由於筆者還沒測試過呢。

不過如今也給社區作貢獻的好時機,
爲社區提供一些新的插件
目前Atom已經有了大部分基礎功能的包,目前還缺乏一些重磅的功能,
好比Linter和語法高亮。
不過我相信這些空缺立刻就會被填補的。

Atom的快捷鍵配置文件是在~/.atom/keymap.cson
你也能夠經過菜單找到Atom > Open Your Keymap
這個配置文件還有些例子來指導你如何設置快捷鍵。

惟一一個你須要記住的快捷鍵就是Command-Shift-P
這個快捷鍵會彈出窗口裏麪包含着全部可用的快捷鍵,還能模糊搜索。

Atom官網的入門指導
提供了不少有用的信息,很是值得一讀。
因爲目前Atom項目文檔仍是不多,對Atom的瞭解你仍是要經過反覆採坑來學到。

比較

不少人確定會問Atom和Sublime比到底如何?
說實話Sublime目前仍是我最愛編輯器,Atom也是款很不錯的Beta測試產品。
可是目前仍是不肯意切換。Sublime的內建的功能加上目前繁榮的擴展生態,
對我來講是一個很成熟的編輯器。

可是話說回來,Atom有Github這個黃金招牌在絕對是頗有份量的。
鐵打的Geek氣息,尤爲基於Chromium和Node.js所帶來的擴展性,
Atom的插件包確定會有長足的發展的。

目前,Github將Beta版的Atom免費提供給碼農們搗鼓。
若是之後Atom採用合理的價格策略,而且插件的生態圈能快速的發展起來的話,
我最終仍是會選擇Atom的。


捐贈

若是您以爲本文對您有幫助,歡迎請譯者一杯咖啡
捐贈譯者
https://me.alipay.com/shupengfei

相關文章
相關標籤/搜索