[Atom] autosaveパッケージの設定を有効にして自動保存をできるようにした



Nプログラマです。

Atomでブログの記事やプログラムを書いている時に、頑張って作り上げたにも関わらず保存しないまま消してしまった経験はありませんか?

自分も確認ダイアログ(保存していませんがエディタを閉じてもいいですか?)が出ていたにも関わらず、「はい」を選んで消してしまったことがあります。

再びそのような悲しみに暮れないため、Atomの自動保存の設定をすることにしました。

デフォルトで使える機能なのでお手軽に設定することができます。

なプ

WordPressだと自動保存してくれるよね。
リビジョンが増えて、記事IDがすごいことになるけど。

環境情報

アプリ名 バージョン
Mac OSX 10.13.6
High Sierra
Atom 1.41

autosaveパッケージを有効にする

パッケージを有効にするためAtomの設定画面を開きます(Cmd + ,でも可)

/img/article/common/atom/open-preference.png
設定を開く
/img/article/2019/12/12/01.png
パッケージを探す

デフォルトで入っているパッケージのため、左側のリストからPackageを選択します。

Installed Packasgesの検索欄にautosaveと入力すると、autosaveパッケージが表示されます。

最初はDisabledになっていると思うので、ここをクリックしてEnabledに変更します。

これで自動保存が有効になります。

Settingsは?

特に設定項目はありません。

READMEやgithubリポジトリを開きたい時に、Settingsを開いて内容を確認すればいいと思います。

» 作者さんのgithubリポジトリはこちらです。

保存のタイミング

自動保存が本当に実行されているかを確認してみます。

自動で保存されるタイミングはgithubのREADME.mdによると、以下のように記載されています。

Autosaves editor when they lose focus, are destroyed, or when the window is closed.

https://github.com/atom/autosave README.mdより引用

あまり英語が得意ではありませんが、以下のタイミングで自動的に保存されるようです。

  1. エディタのフォーカスが外れた時
  2. エディタが破棄された時
  3. ウィンドウが閉じた時

それぞれ試してみます。

1. エディタのフォーカスが外れた時

まずはこちらから試してみます。

ファイルの準備

以下のようにsample01.txtというファイルを用意しました。

/img/article/2019/12/12/02.png
sample01.txt

このファイルに以下のようなテキストを追加して、ファイルを内容を変更にします。

/img/article/2019/12/12/03.png
sample01.txt (追記)

上のファイル名の隣に青いマルが表示されていると、ファイルに変更があるという状態になります。

これで準備オッケー。

フォーカスを外す(切り替える)

フォーカスを外すためには、 別のアプリケーションを開いてそちらにフォーカスを合わせてみます。

MacならAlt + Tabを押せば、アプリケーション(Chromeなど)の切り替えができます。

Atom => Chrome => Atom、という風にフォーカスを切り替えてみました。

その後、先程のsample01.txtを確認してみると、、、

/img/article/2019/12/12/04.png
sample01.txt (自動保存)

ファイル名の隣の青いマルが消えているので、保存されているようですね。

ちなみにフォーカスをChromeに切り替えた時、catコマンドを使いファイルの中身を確認しても、きちんと保存されていることが確認できました。

cur: ~/work/tmp
> cat ./sample01.txt
これはsample01.txtというファイルです。
追加した内容です。

2. エディタが破棄された時

次はsample02.txtを使い、エディタが破棄(閉じた)時、保存されているかを確認してみます。

ファイルの準備

今度はsample02.txtというファイルを用意しました。

/img/article/2019/12/12/05.png
sample02.txt

このファイルに変更を追記して、以下のようにします。

/img/article/2019/12/12/06.png
sample02.txt (追記)

これで準備完了です。

なプ

ファイル名や内容はさっきと同じことなんだけどね。。。

エディタを破棄する

エディタを閉じるためには、エディタのファイル名の右側にある閉じるボタンを押します。

閉じるボタンは編集中だと青いマルになっていますが、ファイル名が表示されているタブにマウスカーソルを重ねると、以下のようにバツ印に変わるのでココをクリックします。

(スクショがうまくいかなかったので、マウスカーソルが映っていませんが。。。)

なプ

キー操作で閉じるにはAlt + wで出来ます。

/img/article/2019/12/12/07.png
sample02.txtを閉じる

するとエディタが閉じるので、再度sample02.txtを開いてみましょう。

こちらも保存されていることを確認できました。

同じことですが、閉じた時にcatコマンドで確認した結果も載せておきます。

cur: ~/work/tmp
> cat ./sample02.txt
これはsample02.txtというファイルです。
追加した内容です。

3. ウィンドウが閉じられた時

これはAtomを終了させたときですね。

準備

今度はsmaple03.txtというファイル名を準備します。

/img/article/2019/12/12/08.png
sample03.txt

このファイルに以下のように変更を加えます。

/img/article/2019/12/12/09.png
sample03.txt (追記)
なプ

ファイル名以外は同じことの繰り返しですが、最後までお付き合いくださいませ。

ウィンドウを閉じる

それではファイルに変更を加えた状態で、Atomウィンドウの赤の閉じるボタン(Cmd + qでも可)を押してAtomを終了させます。

/img/article/2019/12/12/10.png
sample03.txt (閉じる)

再度Atomを開いてさきほどのファイルを確認すると、保存されていることが確認できます。

そしてウィンドウを閉じた直後、catコマンドで確認した結果です。

cur: ~/work/tmp
> cat ./sample03.txt         
これはsample03.txtというファイルです。
追加した内容です。

検証のまとめ

検証した結果、README.mdにある通り自動保存されていることを確認できました。

  1. エディタのフォーカスが外れた時
  2. エディタが破棄された時
  3. ウィンドウが閉じた時

これらのイベントが個別に取得できる場合は、forkして個別設定をできるようにすれば面白いかなと思いました。

ちょっとメリットは分からないですが。。。(笑)

おわりに

今回はAtomのautosaveパッケージを有効にして自動保存をする、という内容でした。

パッケージを有効化すればそれで終わりだったのですが、自動保存のタイミングを検証してみたりしたのでちょっと長くなってしまいましたね。

自動保存をされるのが困るケースがなければ、設定を有効にしておくと良いと思います。

Atomで編集するファイルがリモートサーバなどに同期しているような環境の時は、意図しない変更がサーバに反映されないように注意が必要です。

それでは、このへんで。
バイナリー!



関連した記事