在之前的章節中我們已經知道atom給我們提供了基於圖形介面的配置方式. 對於初學者, 這種配置方式無疑是很方便的. 其實我們還能通過直接編輯配置檔案的方式來更靈活地配置atom. 下面我們就來學習配置檔案的使用方法.
cson(coffeescript object notation)是atom配置檔案的檔案格式, 它使用鍵值對的格式來儲存資料. 就像下面這個樣子
key:
key: value
key: value
key: [value, value]
跟python類似, cson使用縮進來標識語句塊.
cson的key的名字不能重複, 如果cson中包含了多個同名的key, 那麼最後的那個key的值會覆蓋之前同名的key.
因此不能這樣配置
# 只有第二個snippet會被載入
'.source.js':
'console.log':
'prefix': 'log'
'body': 'console.log($);$2'
'.source.js':
'console.error':
'prefix': 'error'
'body': 'console.error($);$2'
而應該這樣配置
# 兩個snippets都會被載入
'.source.js':
'console.log':
'prefix': 'log'
'body': 'console.log($);$2'
'console.error':
'prefix': 'error'
'body': 'console.error($);$2'
value可以是字串, 數字, 物件, 布林值, null, 或陣列.
有這樣乙個場景, 我們想對乙個主題中的某個元素的style進行一點點修改, 但又不想(或是不會)建立乙個完整的主題包, 這個時候我們就可以通過編輯styles.less
檔案來達到目的. 這個檔案位於~/.atom
目錄下, 是乙個less語言(乙個css的預處理程式)的原始檔.
我們可以使用atom來開啟並編輯這個檔案, 也可以通過主選單edit
->stylesheet
來更方便地開啟它.
舉個例子, 如果我們想要改變狀態列的顏色, 可以在styles.less
中加入
.status-bar
就這麼簡單.
但我們如何知道需要修改的物件的類名和屬性名呢. 我們知道, atom是基於node.js和chromium開發的, 那麼我們當然也可以使用chromium提供的開發工具來除錯它. 呼出開發工具的快捷鍵為ctrl+shift+i
.
我們可以使用開發工具來檢索atom中所有的元素. 如果需要修改某個元素的style, 在上文中提到的styles.less
中修改其屬性值即可. 如果你不會less, 那就把它當作css吧.
在atom中熱鍵的配置方式與主題類似, 舉個例子:
'atom-text-editor':
'enter': 'editor:newline'
'atom-text-editor[mini] input':
'enter': 'core:confirm'
上面的**定義了enter
鍵在不同環境中的不同表現. 在正常的編輯視窗中按enter
鍵觸發editor:newline
命令, 也即是普通的回車. 而當在乙個編輯框中鍵入enter
時, 則會觸發core:confirm
命令.
在預設情況下, 當atom啟動時會載入keymap.cson
檔案來獲取自定義熱鍵, 並且keymap.cson
是最後被載入的配置檔案, 這樣可以保證我們配置的熱鍵可以覆蓋atom自身或其外掛程式定義的熱鍵. 這個檔案同樣位於~/.atom
目錄下, 當然也可以通過主選單edit
->keymap...
來直接編輯這個檔案.
我們也可以在設定視窗的keybindings
頁面檢視當前所有的快捷鍵.
atom還提供了乙個視窗來幫助我們除錯熱鍵的設定, 可以使用ctrl+.
或命令key binding resolver: toggle
來撥出該視窗. 此視窗可以實時顯示我們按下的熱鍵所對應的處理方法.
"*":
core:
themes: [
"atom-material-ui"
"atom-material-syntax"
]editor:
tablength: 4
".json.source":
editor:
tablength: 4
其中以"*"
為根的配置資訊是面向全域性的, 而類似於".json.source"
或".python.source"
為根的配置是面向特定語言的.
具體的全域性配置項請參考官方文件
上一節中我們已經知道除了配置全域性項, 我們還可以通過編輯config.cson
針對特定的語言來進行相應的設定.
比如我們需要markdown檔案使用自動換行, 而ruby檔案的tab長度為2, 但python檔案的tab長度又為4, 就可以這樣設定:
'*': # 其他語言
'editor':
'softwrap': false
'tablength': 8
'.source.gfm': # markdown
'editor':
'softwrap': true
'.source.ruby': # ruby
'editor':
'tablength': 2
'.source.python': # python
'editor':
'tablength': 4
常見的配置項有
editor.autoindent
editor.autoindentonpaste
editor.invisibles
editor.nonwordcharacters
editor.preferredlinelength
editor.scrollpastend
editor.showindentguide
editor.showinvisibles
editor.softwrap
editor.softwrapatpreferredlinelength
editor.softwraphangingindent
editor.tablength
至於如何獲得指定語言的檔案型別名字, 在我們教程的第四章中已經講過了, 也就是通過settings
視窗的packages
中搜尋到需要配置的語言, 就可以在scope項處看到該語言的檔案型別名了, 如下圖:
同時我們也可以在這裡對該語言進行一些圖形化的設定:
另外還有一種更簡單的獲取名字的方法: 先將游標置於目標檔案, 再鍵入ctrl+alt+shift+p
, atom會顯示當前游標處的某些資訊, 其中第一條一般就是該檔案的型別名字, 這些資訊在以後學習自定義主題樣式的時候也用得著.
假如我想atom將擴充套件名為foo
的檔案識別為coffeescript, 那麼可以在config.cson
檔案中這樣設定:
'*':
core:
customfiletypes:
'source.coffee': [
'foo'
]
Atom編輯器入門到精通 五 Git支援
版本控制對於開發來說非常重要,atom當然也提供了很好的支援,本文將介紹如何在atom中整合使用git和github 當你修改了某個檔案,然後發現改得不滿意,希望恢復檔案到最後一次提交的狀態,可以使用cmd alt z或checkout head revision命令 此命令將會放棄你對檔案所有的修...
Atom編輯器入門到精通 三 文字編輯基礎
身為編輯器,文字編輯的功能自然是放在第一位的,此節將總結常用的文字編輯的方法和技巧,掌握這些技巧以後可以極大地提高文字編輯的效率 注意此節中用到的快捷鍵是mac下的,如果你用的系統是win或者linux,可能會有一點不同.在編輯文字的過程中移動游標是一種頻率很高的操作.我們不應只滿足於通過滑鼠或鍵盤...
Atom編輯器 嘗試
最初的原因是因為csdn自帶的markdown編輯器不好用,尤其是顯示的字型特別小。在網上找解決方法,發現markdown編輯器是可以自帶字型設定 的。size 5 color green 字型為5的綠色文字font 效果如下 字型為5的綠色文字 因為 比較多,我又比較懶,所以就打算找乙個可以方便快...