ノート PC 上の Emacs で Dropbox で共有しているファイルを編集してフタを閉じて家を出る。 スマートフォンだったり別の端末でそのファイルを参照したり続きを書こうとしたりしたら……あれさっき書いたやつは……上書き保存 (C-x C-s) し忘れたままサスペンドしてしまったか……。あるある。
結構切ないので更新するたびに自動で上書き保存するように設定しておくことにした。 この手のは kentaro 氏 の auto-save-buffers-enhanced.el が有名なようなのでそれを利用させていただく。
設定はとりあえず以下。
(require `auto-save-buffers-enhanced) (setq auto-save-buffers-enhanced-interval 3) (setq auto-save-buffers-enhanced-include-regexps '("/howm/capture/")) (auto-save-buffers-enhanced t)
~/var/howm/capture/ 以下など /home/capture/ がパスに含まれるものを自動的に保存するように設定した。慣れてきたらだんだん対象を増やすつもり。
自分は開いているプログラムのソースファイルに気がついたら 'p' とかよく間違えて入力しちゃっていることがあるので、全部自動保存対象にするのはやめておく。あと保存したら即公開系のものもちょっと危険なので対象外にしておくつもり。
それとファイルの保存時に hook で delete-trailing-whitespace を呼んで行末の余分な空白文字列は除去しようとしている(プログラムを書く人ならみんなそうしているよね?)んだけれど、しょっちゅう自動保存が走ってそのたびに毎回行末の空白が消えるとちょっと困る(英単語間のために空白を入力している状態の時とか)。
Org Capture で追記する時なんかも
- [2014-07-04 23:10:20] (←ここにスペース1コ)
を自動挿入しているのだけれど挿入した直後に上書き保存されてテンプレートの最後の空白が無くなるとがちょっと嫌。ということでインターバルは3秒に設定してみた。これぐらいなら問題ないはず。
最近は howm / Org Capture のファイルを Dropbox で共有して複数の端末上の Emacs から編集することが増えた。
ここで Emacs でファイルを開いている状態で、別の Emacs で開いて編集したりすると、最初の方の Emacs で「changed on disk; really edit the buffer?」と出たりする。 この時、基本 r を選んで revert することがほとんどなので、もしファイルが変更されていたら、Emacs 上で自動的にリロードしてもらっていい。
ということで調べたところ
(global-auto-revert-mode t)
としておくことで、バッファが更新されていなければ自動的に読み込み直してくれるらしい。さっそく設定。
Emacs の Org Capture でタイムライン的に日時付きで短文を書き込んでいるファイルに、最近は生 Emacs や Android デバイス・iOS デバイス上のエディタから、その日の予定とか日記の下書きなんかもまとめてそこに書いたりしているんだけれど、結構いい感じ。基本1日の終わりや翌朝に各日記に転記したりして整理している。
今は howm にあわせて %Y/%m/%Y-%m-%d-000000.md というファイル名に書き込むようにしている(記事)んだけれど、整理・繰り越ししてしまった後はその日のファイルは消してしまうので、わざわざ日を変える必要も無くなってきた。ファイル名を日別に変えると開きっぱなしにしておくファイルも毎日別のにしなければならないし。
ということで Org Capture の設定をちょっと変更。ファイル名は固定にした。
(setq org-capture-templates '( ("c" "capture (howm)" plain (file "~/var/howm/capture/capture.md") "- [%(format-time-string \"%Y-%m-%d %H:%M:%S\")] %?\n" :unnarrowed t)))
- [2014-08-07 22:23:24] つぶやきー。
みたいな行をどんどん追記する形でキャプっている。Emacs では Org Capture にて、 Android デバイスでは Jota+ で自動的に現在日時を挿入するようにしている。iOS デバイスでは PlainText 2 でこのファイルの編集をしているのだけれど、単独で現在日時を挿入する機能が無いので Textwell という iOS アプリを入れてみた。
Textwell ではテキストをさくっと書いて他のアプリに渡すのに便利なアプリっぽい。Android アプリのサポテキ(SupportText)的なポジションのアプリなのかな。 JavaScript でアクションを書いておいて実行できるのがマニアック。
Textwell にある関数だと日付が / 区切りなので - 区切りにしたい場合は自前でコードを書く必要がある。以下のような感じにしてみた。
function zerofill(s) { return ("0" + s).substr(-2) } dt = new Date(); date = dt.getFullYear() + "-" +zerofill(dt.getMonth() + 1) + "-" + zerofill(dt.getDate()); time = zerofill(dt.getHours()) + ":" + zerofill(dt.getMinutes()) + ":" + zerofill(dt.getSeconds()); stamp = "- [" + date + " " + time + "] "; T("insert", {text:stamp});
Dropbox 上の /capture/capture.md ファイルの末尾に Textwell の内容を追記するアクションは以下のような感じにしてみた。
path = "/var/howm/capture/"; file = "capture.md"; T("iacplaintext://x-callback-url/append?x-success=textwell:&location=dropbox&path=" + encodeURI(path) + "&name=" + encodeURI(file) + "&text=" + encodeURIComponent("\n" + T.text + "\n"));
昨日ファイル名を固定にしたのもこの仕込みだったりもする。
昨日に Textwell を入れて PlainText 2 に現在日時付きで追記できるようにしたのだけれど、なんか PlainText 2 がクラッシュしがちになってしまった。
でチェックしているうちに TextExpander 入れて PlainText 2 上で直接現在日時を入れればいいのではと思って TextExpander をインストール。
'ccc' (Org Capture で C-c c c でキャプチャしているので) と入力したら
- [%Y-%m-%d %H:%M:%S]
になるように snippet を追加。これで PlainText 2 だけでイケる! と思ったけれどもなぜか使えない。 TextExpander に最初からサンプルで入っている ddate とかは自動変換されるのでうまく PlainText 2 に snippet の更新が反映されていないようなのだけれど、PlainText 2 側には TextExpander snippet のリフレッシュのためのメニューなどがないのだよね。
ということでおもいきって Dropbox 上のテキストファイル用のテキストエディタを別に探してみることにした。せっかく TextExpander を入れたので対応しているものをということで Textforce for Dropbox をチョイス。
PlainText 2 は編集すれば勝手に Dropbox 上に保存してくれて、逆に Dropbox 側で更新があれば勝手に再読み込みをしてくれるのがとても便利なのだけれど、意外に同様の挙動をするものが無い。 Textforce も編集中で完了していない状態だと Dropbox から再読み込みしてくれない。ただ編集が終わったらきちんと「完了」しておけば Dropbox 側で更新された場合に、次にアプリを開いた時に「Loading...」と出て開いているファイルを再読み込みはしてくれるのでまあ許容範囲かな。
逆に編集機能については PlainText 2 より高機能だし TextExpander もちゃんと効く。
ということで PlainText 2 から乗り換え決定。PlainText 2 は2軍落ち。
[ ユビキタスキャプチャ ]
ぼっち Slack チームを作って使ってみたら便利なので Org Capture (Emacs) でのタイムライン型のノートはほとんど使わなくなった。Slack はモバイルデバイスからさくっと入力できるし、再編集できるのでとりあえず略記で書いておいて後できちんと書き直すこともできるしで便利。
そのままタイムラインとして Slack に残しておいてもいいんだけれど、ふりかえりをするいい機会なので自分は日記 / Web 日記にまとめなおして Slack 上からは適宜削除していっている(メモ的なものとか、ネタとして寝かせておくものはそのまま残してある)。
まとめ先は
とあってその日の出来事などに応じてそれぞれ書いたり書かなかったりなんだけれど、Slack のメモをまとめて振り分けていくと同時に書いていくことになってわけが分からなくなってくる。
やってみている感じだと、公開範囲の狭い方から広い方へ(非公開から全体公開へ)の順に書いていくのが自然な感じな気がする。素材である Slack からだんだんふるいにかけていく感じ。
昨年末に引き続き2014年を日記まとめとして月毎にふりかえり(去年の2013年日記まとめ)。
年初からフリック入力再チャレンジを始めた。これは今年無事マスター。たしかに日本語入力についてはフリック入力が楽なので覚えて損は無いと思う。両親指の付け根が痛くなってスマートフォンが使えない体になってしまうかと思った時もあったのだけれど、これはどうも掃除の時に指を酷使したのが原因だったんじゃないかなということで、ほどなくして治った。
また、正月にデータカードダス アイカツ! を初プレイしたところから、アイカツ! 活動が始まった。家ではプリキュアからアイカツ!にトレンドが移った1年。今年後半からプリパラが始まっているのだけれど果たしてどうなるのかな。
遊びといえば今年から花札もやり始めた。「マンガで覚える 図解 花札の基本」という本も買ってトライ。主にこいこいをやっていた。最初の頃は結構遊んでいたけれど最近はちょっと下火。この年末年始は百人一首が流行っているところ。
ガンダムフロント東京のガンダムも今年初めてみた。結構しっかり作りこまれた印象だった。
タスク管理ツールは今年は Toodledo を復活。公式 Android アプリも出たことで今は Toodledo 1本でタスク管理できている。9月に Toodledo Gold にアップグレードしてアウトライン機能も使ってみているけれども、こちらはおまけレベルかな。Gold だとタスクのノートを永続的に残せるので年に1回やるようなプロジェクトについては過去の知見を生かしていくようにするつもり。
今年出会って良かった製品の1つが「万能Jrくん」。キッチンシンクと、風呂の鏡と握りバーがピカピカになった。もうちょっと安いと嬉しいんだけどな。買う時は何個かまとめて買ってる。
FaceTime 用に Plantronics M55 Bluetooth ヘッドセットを購入。初 Bluetooth ヘッドセット。当初はプライベートの FaceTime で使っていたけれど最近は Skype ミーティングの時に使っている。相手の声が他に漏れずにクリアに聞こえるし持っておくと便利なことがわかった。今だと Plantronics M90 Bluetooth ヘッドセット が後継モデルらしい。
2月からは東京オフィスにエンジニアが転勤してきたので馬肉を食べるなど。一緒にエヴァンゲリオンネタで盛り上がったりしつつ開発している。
第2日曜日にはアイカツ! オフィシャルバインダーを初入手。一時的にオフィシャルバインダーが入手困難な時期で結構確保にやきもきした。
1日から不正ログイン対応で休日出社。また3月20日の内定者アルバイト氏の懇親をかねた飲み会の最中にも発生して、それぞれ別々の場所で飲んでいた部署の人達と LINE グループや IRC などで連絡をしつつ対応したり、その後会社に戻ったりとバタバタしたりしたのも良い思い出ではある。
その日はついでに会社から家まで歩いて帰ってみた。今年はそのあと歩く会に2回参加したりと長距離歩く機会のある年でもあったな。
しかしまあ今年は不正ログインが非常に多い年だった。対策は進んでいるんだけれど、来年はどうなるのかな。
あと3月中旬ぐらいから howm + Markdown + Plack でのビューアー環境を構築し始めた。ちょっとしたコードだけれど、Emacs で書けるし個人的にはかなり重宝している。 Confluence めんどい。
Emacs といえば Org Capture も3月から使い始めたのだけれど、こちらは Slack に座を奪われた。今はぼっちつぶやきは Slack にしている。 その Slack を最初に試しはじめたのもこの3月なんだけれど、今は欠かせないツールになってきている。 IRC 時代に比べて便利になった。
3月から積極的にmixi日記も書くようになった。11月20日から「みんなの日記」というのも追加されオープンな記事も書けるようになったのでいろいろ活用できるようになった感じ。
歩く会に初参加。今回は「都電荒川線沿線」。道中楽しいし、達成感もあるしこれはいい会だ。11月には「渋谷から横浜みなとみらい21まで」歩いた。30km ぐらいがこの会のひとつの目安距離だということがわかった。
4月16日で転職から丸3年経過。いい感じに仕事楽しい。
切腹最中も今年初めて食べることができた。切腹沙汰になったら身代わりになってもらおう。
ついに SKK を止めることにして Google 日本語入力を使い始めた。いや実際には Emacs 上ではまだ SKK を使っていて、思ったより両刀使いできているなと。SKK の辞書登録に慣れてしまうとその点だけ他の IM が不便でしょうがない。
ゴールデンウィークは浅草へ。ほぼ「亀十のどら焼」を食べに行った感じだ。今度はもう少し空いている時に行っていろいろ回ろう。それとNHKスタジオパークにも行ったな。予想以上にコンテンツが充実しているので良いスポット。
仕事面ではゴールデンウィーク明けにチームに新卒エンジニアが配属された。今元気に戦力となってくれていて頼もしい。あ、今から Emacs に乗り替えてもいいんですよ。
今年買ったカメラは、防水・防塵・耐衝撃デジカメ FinePix XP70。東京ディズニーシーや箱根小湧園ユネッサンなどで重宝した。やはり防水デジカメは1台あると便利だな。一度修理に出したけれど気に入っているので愛用している。
今年の健歩大会は東京ディズニーシー。初めての TDS。東京ディズニーランドより居心地が良いね。来年はまた東京ディズニーランドが良いかな。
IDC大塚家具銀座本店で買ったキッチンキャビネットが多分今年一番のお買い物。
いつぶりだろうというぐらいの朝顔の栽培をすることになった。クタッとした状態でやってきた朝顔の復活力には感動した。
例年1人で行っていた渋谷区ふれあい植物センターのホタルの夕べに、今年は家族で行ってみたのだけれど思いのほか長蛇の列だったのでたじろいだ。来年は違うところで見たいな。
そういえばマンボウが流行ったのもこの時期。
引き続き不正ログインはいろいろあって NHK おはよう日本にちょろっと出た。パスワードの使い回しはやめましょう。
多分15年以上ぶりの屋外プール。みんなペロペロしていてびっくりした。
あと会社で「日本人じゃないと思ってました。」って言われた。年末の部署紹介の動画でも良くわかってらっしゃる方が本名じゃなくて NANEY ってスーパーをつけてくれたので、引き続き「誰」感が演出できて嬉しい。
会社のデスクトップ PC が故障してリプレース。最近は仕事ではローカルホスト上にはデータをほとんど置かなくなった。
東京モノレール車両基地見学会があって初めて車両基地に入った。モノレール乗車体験などができて夏休みの良い思い出になった。見学会がある時は1度は行ってみると良いと思う。
あと、8月はヱヴァンゲリヲン新劇場版の DVD を貸していただいたのでエヴァンゲリオンについてプチブーム到来。新劇場版はきちんと観たことが無かったので今回が初。
8月下旬は YAPC::Asia Tokyo 2014。今年は Go・Docker あたりの学びと刺激を得ることができた。Go と Haskell はやっておきたいプログラミング言語。
2014年9月12日から14日の2泊3日で箱根旅行。旅行という形での箱根は多分1995年3月28日29日の時以来なので、19年半ぶり!
関東ITソフトウェア 健康保険組合の保養施設で評判の良い「トスラブ箱根和奏林」の抽選がようやく当たったので嬉しくて、もう準備やら旅行やら帰ってきてからのふりかえりやらで9月は終了。
日本科学未来館の企画展「トイレ? 行っトイレ!~ボクらのうんちと地球のみらい」に行って「うんちのにおい」を嗅いできた。すべり台は楽しかったけれども、期待するほどではなかった。
10月8日は皆既月食だったのだけれど、雲がかかっててほとんど見られず。そのかわりフレアスタックを見ることができた。東京の赤い空の原因の1つはこれか。
仙台初出張では「仙台の人は牛タン食べないし牛タン食べるならねぎし」と教えてもらったのが収穫。
あとはお出掛け的にはふらっと日本郵船氷川丸に乗船しに行ってきた。やっぱり横浜いいわー。
Emacs で anything から helm へ移行したのだけれど、あいかわらず補完がしっくりきていない。
11月は4月に初参加した歩く会に2度目の参加。「渋谷から横浜みなとみらい21まで」歩いた。川崎駅経由で約29km。来年は遠征したい。
あと、11月末からぼっち Slack チームでチャネルをタイムライン型ノートにしはじめた。これはとても便利。日記のネタなんかをいったん突っ込んでおいたりするのに使っている。今年は Slack きたなぁ。
楽園追放が良かった。周囲でも映画館に観にいった率が高く人気だった。今年は映画館で観た映画は結局この1本だけだったな。
年末はレゴを買ったり「エルマーのぼうけん」を買ったりしてエンジョイ。
まとめは後半時間が尽きたというか力尽きたというか。今年のキーワード「アイカツ!」「不正ログイン」「Slack」「歩く会」「箱根旅行」あたりだったかな。
去年「プライベートや仕事での出来事や思いなど、Web 日記には載せないことをどう書き留めていくか最近考えている」と書いて意識できたせいか、今年は非公開な日記やマイミク向けの日記も書けたのは良かったなと思っている。
なにはともあれ今年一年も良い年でした。ありがとうございました。
capture ツールは常に二転三転していて、直近は
みたいな感じに変遷しているんだけれど、 Day One + Narrate も1行エントリを量産するのには便利じゃないなという感じがしてきた。
MacBook Pro を買ってから Evernote の使い勝手が上がった(Linux からだと不便だった)ので、以前使っていた追記専用アプリを復活させて Evernote 上に capture することにした。
使うのは WriteNote Pro。PostEver より良いので一時期ちょっと使っていたやつ。
iOS 版も出ていたのでそちらもインストールしてみた。投稿をセパレートするための空行の位置がなぜか「Android 版は投稿の次に」「iOS 版は投稿の前に」と違う仕様になっているので、両方使うと投稿順によって空行無しになったり2行になったりしてちょっと不細工だけれど、それ以外は良好。
しばらくとりあえずこれで。そのうち「PC で capture する時に不便」とか多分言うと思うけれど。
2年前に使うのをやめた Day One を再び使うことにしました。以前は日記アプリとして使っていたのですが、今回は日々の出来事や思い浮かんだことをいったんキャプチャしておくためのツールとして使います。
思い浮かんだことをキャプチャするのに
などなど試してきました。しかし
というのを満たすものがなかなかなくて悶々としていた訳です。
という点がネックだったのと、日記は特定のアプリ/サービスにロックインされたくないというのとで Day One からは離れていったのですが、 Android アプリが去年リリースされたこともあってキャプチャーツールとして使うにはいいんじゃないかと再評価してみました。
久しぶりの Day One、操作性はバッチリ。Mac 版の Day One でエントリを複数選択してから [Open in] - [Plain Text] としてテキストエディタを指定すると、エントリ(日時あり)が並んだテキストファイルを開くことができて書き出しも簡単だということがわかりました。これで1日分の内容を Ulysses で楽にまとめることができます。
リマインダでキャプチャを促すこともできるので、書きそびれてあとで振り返れなくなることも少し減らすことができそうです。
しいて言えばあとは
があれば安心・便利ですが、無くてもほぼ大丈夫かな。
Android 版で Mac 版と同期するには Day One Premium が必要なので年額2,800円で購入することにしました。
これで日記書きが捗りそうです。
(画像は dayoneapp.com/press/ の Press Kit より)
[ サブスクリプションサービス ] [ ユビキタスキャプチャ ]
Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。
※本サイトの内容は個人的見解であり所属組織とは関係ありません。