Atom の設定を sync-settings を用いて共有する方法
sync-settings というパッケージを用いて、Atom の設定を共有する方法を紹介します。このパッケージを用いれば Atom の設定やインストールされているパッケージだけでなく、各パッケージの設定やキーマップ、スニペットなども共有することができます。
Atom の設定を共有する方法として、apm star
コマンドを用いる方法とシンボリックリンク(と Dropbox などのクラウドストレージ)を用いる方法の二通りがよく知られています。しかし、apm star
コマンドを用いる方法では、インストールされているパッケージの共有しかできず、Atom の設定や各パッケージの設定、キーマップなどの設定も共有することができません。また、シンボリックリンクを用いる方法では、~/.atom/compile-cache(C:\Users\ユーザ名\.atom\compile-cache)フォルダや ~/.atom/strage(C:\Users\ユーザ名\.atom\strage)フォルダなどの不要なファイルまで共有されてしまいます(これを防ぐ方法はありますが、その分手間がかかります)。
sync-settings を用いる方法では、ほぼすべての必要な設定を共有し、不要なファイルは共有しません。この sync-settings を用いた Atom の設定を共有するスマートな方法を紹介します。
sync-settings をインストールする方法
Atom → Preferences... を順番にクリックして Settings を開きます。サイドバーの Install をクリックして sync-settings を検索して、install をクリックするとインストールすることができます。
また、apm をインストールしている人は、ターミナルに以下のコマンドを入力することで sync-settings をインストールすることもできます。
apm install sync-settings
sync-settings の設定
sync-settings を用いて Atom の設定を共有する前にしなければならないことが3つあります。1つ目は、GitHub のアカウントを作成することです。sync-settings は Gist を用いて Atom の設定を共有するので、GitHub のアカウントが必要となります。もちろん、すでに GitHub のアカウントを作成している人は新たにアカウントを作成する必要はありません。
パーソナルアクセストークン
次にしなければならないことは、sync-settings が Gist へアクセスする権限(「パーソナルアクセストークン」と呼びます)を作成して、それを sync-settings の設定へコピー&ペーストすることです。
New personal access token にアクセスして、「Token description」にトークンの説明(例えば、「atom-sync-settings」)を入力します。「Select scopes」にはデフォルトで repo、public_repo、gist、user の4つのスコープにチェックが付けられているので、gist スコープのみチェックを残して、「Generate token」をクリックします。
パーソナルアクセストークンを作成すると、以下のように「Make sure to copy your new personal access token now. You won't be able to see it again!」(パーソナルアクセストークンを今確実にコピーしてください。これを再び表示することはできなくなります。)という警告文とパーソナルアクセストークンが表示されます。警告に従い、パーソナルアクセストークンの横にある青いアイコンをクリックして、パーソナルアクセストークンをコピーします。
Atom → Preferences... を順番にクリックして Settings を開きます。サイドバーの Packages をクリックして sync-settings の Settings をクリックします。
コピーしているパーソナルアクセストークンを「Personal Access Token」にペーストします。
Gist ID
最後にしなければならないことは、Gist を作成し、その URL の末尾の英数字(「Gist ID」と呼びます)を sync-settings の設定へコピー&ペーストすることです。
Gists にアクセスします。「Gist description...」には何も入力する必要はありません(何か入力したとしても、下記の手順を追うと「automatic update by http://atom.io/packages/sync-settings」と上書きされてしまいます)。「Name this file...」と下部の入力欄に任意の文字(例えば、ファイル名「atom-sync-settings.md」、ファイルの内容「# Atom の設定を sync-settings で共有します。」)を入力して、「Create public Gist」をクリックします。
作成した Gist の ID(URL の末尾の英数字)をコピーします。作成した Gist の URL が https://gist.github.com/ユーザー名/12345abcde だった場合、Gist ID は 12345abcde です。スラッシュ / は不要です。
パーソナルアクセストークンをペーストしたように、sync-settings の Settings にある「Gist Id」にコピーしている Gist ID をペーストします。
sync-settings を用いて Atom の設定を共有する方法
共有元と共有先の両方の環境で sync-settings をインストールし、それぞれパーソナルアクセストークンと Gist ID を sync-settings にペーストすれば、準備は完了です。共有元の環境で Atom の設定を Gist にアップロードし、共有先の環境で Atom の設定を Gist からダウンロードすることで、Atom の設定を共有することができます。
共有元:Atom の設定を Gist にアップロードする
Packages → Syncronize Settings → Upload を順番にクリックする(もしくは control + alt + U を押す)と、作成した Gist に以下の6つのファイルがアップロードされます。
init.coffee
- .atom フォルダ内のinit.coffee
と同一のファイルkeymap.cson
- .atom フォルダ内のkeymap.cson
と同一のファイルpackages.json
- インストールされているパッケージの一覧を記述したファイルsettings.json
- .atom フォルダ内のconfig.cson
を JSON ファイルに変換して、sync-settings の設定(パーソナルアクセストークンと Gist ID)を削除したファイルsnippets.json
- .atom フォルダ内のsnippets.json
と同一のファイルstyles.less
- .atom フォルダ内のstyle.less
と同一のファイル
アップロードがうまくいくと、「sync-settings: Your settings were successfully uploaded.」と表示されます。
Atom の設定がアップロードされた Gist は以下のようになります。
automatic update by http://atom.io/packages/sync-settings
また、上記の6つのファイル以外のファイルも共有することができます。sync-settings の Settings にある Extra Files に共有したいファイルを(ファイルが複数ある場合はコンマ , 区切りで)記述すると、それらのファイルも共有することができます。ただし、~/.atom(C:\Users\ユーザ名\.atom)フォルダ直下にあるファイルしか共有できません。
例えば、Atom のプロジェクトを容易に管理することができるパッケージの project-manager は、~/.atom(C:\Users\ユーザ名\.atom)フォルダに projects.cson
というファイルを作成します。このファイル名を Extra Files に記述すると、project-manager で管理している各プロジェクトの設定も共有することができます。
共有先:Atom の設定を Gist からダウンロードする
Packages → Syncronize Settings → Download を順番にクリックする(もしくは control + alt + D を押す)と、Gist にアップロードされているファイルがダウンロードされて Atom に反映されます。
ダウンロードがうまくいくと、「sync-settings: Your settings were successfully synchronized.」と表示されます。
雑感
Mac から Windows へ Atom の設定を共有することができたので、同一の OS 間だけでなく異なる OS 間でも設定を共有することができると思います。
Gist で設定を共有するので、各設定ファイルはバージョン管理されます。各設定ファイルを誤って上書きしてしまったり、削除してしまったりしても、以前のバージョンに復元することができます。シンボリックリンクと Dropbox などのクラウドストレージを用いた方法でも履歴や版などといった機能で以前のバージョンに復元することができますが、ファイルの古いバージョンは30日間しか保存されなかったりするので、sync-settings のほうが安全です。
さらに、sync-settings は設定が自動的に共有(同期)されるようにアップデートされる予定なので、今後もますます期待できます。