複数マシン間で、atomで取ったメモを同期するための環境を整えた

自分は、いろんな作業をするときに、人に報告したり、twitterに書いたりするほどでもないことを、atomを使ってmarkdown形式でメモをとりながら進めています。
1台のマシンでメモを取るだけなら、シンプルでいいんですが、VMを含め、複数台のマシンを行ったり来たりしながら作業するとなると、これらの間でどうやってメモを同期するか、という点が悩ましくなってきます。
今回のエントリは、どうやってatomを用いて、複数のマシンでどうやってメモを同期させるか考えたっていう、そんなお話。

TL;DR

  • atomのsync-on-saveはとても良い
  • WindowsとLinuxだとパッチ当てないと動かない(2017年10月12日時点)

gitでメモの同期をとりたい。でもコマンド打つの、面倒だな。

ファイル単位で同期を取る仕組みというのは、atomには色々あって、たとえばRemote-FTPというパッケージで実現することができます。
最初はこれを使っていたんですが、同期の粒度がファイルだと、複数のマシンで同じファイルを変更したときに、どちらかがどちらかをうっかり上書きして、せっかく書いたメモを失う、なんてことになりそうだなと思いました。
実際に上書きをしてしまったことはなかったものの、そういうことが起こりうるということを意識しなければならないのがなんとなくストレスでした。

だから、ファイルよりも小さい単位で同期を取りたい。
そうだ!僕達には、gitがある!gitを使おう!と考えました。

でも、gitも、コミットメッセージを書いたり、共有のためにpushしたりと、やらなければいけないことが多くてちょっと面倒です。

sync-on-save というパッケージに面倒事を引き受けてもらう

どうせ、自分が適当に見るメモなんだから、コミットメッセージなんて適当に自動でつけてくれればいいし、pushも勝手にやってくれればいいのに。
そんなパッケージないかなー?と探してみたところ sync-on-saveというパッケージがありました。

このパッケージを使って救われました。本当に欲しいものそのものでした。
コマンドパレットからEnable Syncすると、ファイルを保存したタイミングでgit commitとgit pushを自動でしてくれます。
あとなんか他の場所で同じファイル編集してたらmergeもしてくれる。

本当に便利だ。素敵だなぁ。

LinuxとWindows向けにバグがあって動かなかった→なおした

バグを見つけたので直しました!バージョン0.1.5からは何も考えずにATOMのパッケージをインストールすれば使えるようになりました!
みんな使ってみてね。

2017年10月12日時点でダウンロード可能な、バージョン0.1.4にはちょっとしたバグあり、WindowsとLinuxでは動きません。
直したのでプルリク投げてみるつもりです。

差分は1行なので、これ読んで今すぐ使ってみたい!って思った人は、sync-on-saveをインストールした上で、コードを直接いじるのが楽そうです。
コミットの情報はここにおいときますので参考にしていじってみてね。

https://github.com/sirrow/sync-on-save/commit/7df50d7094156b9fd030ab698a6ff69a680177af
おしまい。

本文に書ききれなかったけど書きたかった事

sync-on-saveを作った人について

sync-on-saveを作った人すごいなぁ、ありがたいなぁ。プルリクも投げなきゃいけないし、どんな人なんだろう?って思ったので調べてみたら、 Hajime Morita さんでした。
そういえば、rebuild.fm 聞いたことないし、今度聞いてみよう。

昔はssh + screen + emacsでメモを取ってた

自分は一昔前は、VPS上でscreenを動かして、その上で動かしたemacs -nwに、色んなマシンからsshでログインした上でattachしてメモを取ってました。
これはこれで悪い方法じゃなかった気がします。手軽だしね。ただ、ネットワークから切断されるとつらいんだこれ。
gitなら手元にコピーあるからネットワークなくても編集できるしね。そんなところが素敵。

35歳になりました

2017年10月3日に35歳になりました。
四捨五入したら40歳になる。マジか。
マジかとか書いちゃうアラフォーマジか。大丈夫なのか。
大人とは一体何なのか。

例年、誕生日前になったら、しっかりamazonの欲しいモノリストを作って、
twitterに流したりしていたのだけど、今年は完全に忘れていた。

去年は、結構色々頂いたのだけど、それをあまり有効活用できなかったという反省もある。
もっとアクティブに活動できたら良かったと思う。
インターネットに欲しいモノリストを公開して、それで、何かをもらうってことは、
インターネットに対してその分、何か面白いことを仕掛けていく責任みたいなものと表裏一体だと思っている。
そういった面で、今年一年はあんまりいろいろできなかったなーって思ってる。

だから、今年に関しては、何かいただくというのも気が引けるので、
今年は別に欲しいものリストは作らなくても作らなくてもいいかなぁとも思ったんだけど、
普段、あまり何がほしいのかを整理する機会もないので、
ほしいものを棚卸しする機会だと思って整理してみることにした。
毎年、何が欲しかったのか、ということを記録して振り返れるのは悪くないとおもう。

で、今年のリストがこれ。
http://www.amazon.co.jp/registry/wishlist/3B9IYL63UAU7K/ref=cm_sw_r_tw_ws_x_5uy1zbZV51GHX

正直、最近、音楽はさっぱり、って感じなんだけど、ほしいものを整理したら結局楽器だらけになった。

raspberry pi 3 が届いた

で、10月3日の夜10時頃にとりあえずまとめてtwitterに流したら、
さっそく翌日、10月4日にみかるちゃんからraspberry pi 3が届いた。

先に書いたとおり、今何が欲しいのかを自分でまとめて、
ついでにネタでtwitterに流しておくかと言った気持ちだったので本当に何かが届くことを想定なんてしてなかった。
なので、届いた結果、raspberry pi 3を動かすために必要なmicrosdカードとmicro usbのケーブルが、
家にまったくないことに気づいて、焦ってamazonでmicrosdとmicrousbのケーブルを注文する、ということが起きた。
それくらい、なにかが届く可能性なんて、まともに想定していなかった。

動かすのに必要な物はひと通り注文して、ちゃんと動かす事ができた。
このraspberry pi 3 を使ってやりたい事があるので、
形としてまとまってきたらまたblogに書くことにしようと思う。

PEPSI Strong 5.0GVがたくさん届いた。

自分は、コーラの中ではペプシコーラが好きで、その中でも特にこのStrong 5.0GVってのが一番好きで

前述の通り、流石に誰もなにも送って来ないだろうと思っていたら、
motioncraftから2ケース、
伊波さんたあんふたつむらにゃむずから1ケースずつ、
合計5ケース届いた。

1ケースあたり500mlのペットボトルが24本入っているため、合計で500mlペットボトル120本、24kgのペプシコーラが家に届いた。
(なお、まだ届いてないけど発送したと名乗り出てくれている人も居る。マジか。)

自分は、このコーラが大好きなので、たくさんあっても全く困らないのだが、
普通に飲むだけではあまりに芸がないなと思って、とりあえずtwitterの名前に残りのペットボトルの本数を書くことにした。

こんなかんじ。

しかし、これには問題があると言う事がわかった。
コーラを飲むのは自分だけではなく、嫁さんも飲む。
だから、自分だけが書き換えたのでは数えもれが発生してしまう。

どうしようかなーと悩んでいたら、嫁さんが
「コーラのペットボトルを飲み終わった時に押すボタンみたいなのがあったらいい」と言った。
「ほー なるほどー」、と思ったのでつくった。

もともと持ってたraspberry pi(初代)のGPIOにタクトスイッチを繋ぎ、
ボタンを押したことをnode-redで検出し、node.jsで作ったREST API を叩くようにした。

REST APIは、ペプシの残り本数を状態として持っており、叩かれたら本数を1本減らして、
1本飲んだと言うことをtwitterにポストしつつ、名前を変更する。

毎日、日本時間で23:55に、状態を確認するシェルスクリプトをキックし、状態をCSVに書きだす。
で、書き出されたCSVを読んで、グラフにする。
グラフはここ。
http://sirrow.info/pepsi/

まぁ、なんか、そういうものを作った。
開発環境を作るところからだったのでけっこう時間がかかってしまった。
全部で4〜5時間くらいだと思う。10月7日から9日が3連休で本当に良かった。

コーラを贈ってくれた人も、贈ってくれなかった人もtwitterの名前とかグラフとか見て、
こんなに減ったのかーとなんだかしみじみしてくれれば、無駄に作った甲斐がある。

包丁用の砥石とオシロスコープをもらった

tmy先生からいただいた。

砥石はもともと、tmy先生のお家にあったものと同じ物をたまたま欲しいものリストにいれてた。
あと、オシロスコープは自分に贈ってくれると同時に、tmy先生自身も買ったらしい。
なので、両方ともお揃い。ちょっとうれしい。

砥石は早速使ってみた。
いろんな経緯があって、自分の家には同じ包丁が2つある。
なので、片方を研いで、もう片方は研がずに比べて見たら、
研いだ方がめちゃめちゃよく切れるようになった。

それを確認した後、もう片方も研いだ。

当たり前っちゃあ当たり前だけど、包丁は研ぐとよく切れるようになる。とてもよい。

オシロスコープは、今後頑張って使っていこうと言う感じ。
電子工作、捗るようになるだろうか。