Edited at

Rails書きの僕が最低限やっているAtomの設定

何も設定しないと使い物にならないという噂のAtomにRails書きの僕が最低限やっている設定。


Settings > Editor Settings

font family : Windowsなら consolas, Meiryo。Macなら空のまま。

Show Invisibles : ✓

Soft Tabs : ✓

Soft Wrap : ✓

Tab Length : 2 (デフォルト)

タブの設定はEditorConfigを利用しているのであればeditorconfigパッケージを入れることによって設定が不要になる。


Packages > Core Packages

Whitespace

勝手に空白や改行が削除されたりしちゃう!というときに設定を確認。

Ignore White Space On Current Lineは不要なタブの入ったコードが残りがちなので気分によっては切る。

metrics

Google Analyticsに利用統計データを送信するパッケージ。

気になるならDisableに。


入れておくと便利なPackages

auto-update-packages

packageの自動更新

open-recent

最近開いたファイル

file-icons

無味乾燥なファイルアイコンを色とりどりにしてくれる。

Sublime-Style-Column-Selection

矩形選択ができるようになる。

language-apache

.htaccessに色がつく

linter

linter-ruby

linter-rubocop

Linter系。

linter-rubyはそのままだと日本語が含まれるファイル名を上手く扱えないので以下の設定が必要。

【Atom】linter-rubyが日本語文字列に「unexpected end-of-input, expecting keyword_end」という

https://qiita.com/moonsubaru/items/8ef31a5029f88bd20e1a

language-haml

linter-haml

Hamlを使うのであれば

language-sass

linter-sass-lint

Sassを使うのであれば

language-coffee-script

linter-coffeescript

CoffeeScriptを使うのであれば。

minimap

minimap-git-diff

Sublime Textとかにあるminimapのパッケージ。

幅広なディスプレイ使っていると右方向が寂しいときに入れる。

minimap-git-diffは名前通りminimapでgitの差分がわかりやすくなる。

split-diff

二つのファイルのdiffが見られる。

pigments

CSS上のカラーコードの色が文字の背景色として表示される。

color-picker

CSSとか書いてるときにカラーピッカーからカラーコードを引っ張ってこられる便利パッケージ。


Settings > Core Settings

Allow Pending Pane Items : オフ

Atom 1.6あたりからファイルをシングルクリックしたときには現在のタブでプレビューがされるようになった。

挙動がわかりづらく、個人的にエディタのファイルは新しいタブで開いてほしいのでオフにする。


Ctrl + Tab の挙動の変更

Atom1.7からCtrl + Tabの挙動がMRU (Most Recently Used)になっているが、ブラウザとかと同じ右左に移動してほしいので設定ファイルを少し修正する。

Atom 1.7からタブ切り替えが使いづらくてイライラするので従来式に戻す

http://qiita.com/takuchan9104/items/237dd39bf5987879b106

またはdisable-mru-tabbingパッケージの導入でも同様の修正が可能。


おわりに

以上で挙げたパッケージの他にも便利なパッケージはたくさんあります。

Atomを使い慣れてきて「こんな機能はないのかな?」と思ったらググってみてください。

また何から設定を改善したら良いのかわからなければ「Atom Ruby(Rails)」などでググればたくさんの推奨設定が見つかるので参考にしてみると良いでしょう。


おまけ

一気に全部インストール

apm install editorconfig auto-update-packages open-recent file-icons Sublime-Style-Column-Selection language-apache linter linter-ruby linter-rubocop language-haml linter-haml language-sass linter-sass-lint language-coffee-script linter-coffeescript minimap minimap-git-diff split-diff pigments color-picker disable-mru-tabbing