あとで整理してまとめたりできるように、ふと思ったことを非公開で1人 Twitter タイムライン的にログっておくのに PC 上でなかなかいいのないんだよねとずっと思っていたんだけれど Emacs の Org mode にある Org Capture 試してみたらいい感じだった。
普段 Org mode 使っていないので Org Capture で必要なところだけ設定してみた。
(require 'org) (setq org-capture-templates '( ("t" "Timeline (local)" plain (file (concat "~/var/timeline/timeline-" (format-time-string "%Y-%m-%d") ".md")) "- [%(format-time-string \"%Y-%m-%d %H:%M:%S\")] %?\n") ("n" "Note (local)" plain (file (concat "~/var/note/" (format-time-string "%Y-%m-%d-%H%M%S") ".md")) "# %?\n[%(format-time-string \"%Y-%m-%d %H:%M:%S\")]\n") ("T" "Timeline" plain (file (concat "/naney@example.com:/home/naney/var/timeline/timeline-" (format-time-string "%Y-%m-%d") ".md")) "- [%(format-time-string \"%Y-%m-%d %H:%M:%S\")] %?\n") ("N" "Note" plain (file (concat "/naney@example.com:/home/naney/var/note/" (format-time-string "%Y-%m-%d-%H%M%S") ".md")) "# %?\n[%(format-time-string \"%Y-%m-%d %H:%M:%S\")]\n"))) (global-set-key (kbd "\C-cc") 'org-capture)
'C-c c t' すると
- [2014-03-25 23:24:25]
が書かれたバッファが開くので適当に何か書いて C-c C-c する。と、~/var/timeline-2014-03-25.md にその内容が追記される。
TRAMP でリモートホスト上のファイルを開く時のファイル名を指定してみたらうまくいったので、さくっとリモートファイルにも追記できてすごく嬉しい。ので 'C-c c T' で書き込めるように設定してみた。これで Dropbox や rsync / Unison などで同期する必要がなくていろいろ良い。
あとは追記型ではなくて都度新しくノートファイルを起こすタイプの設定も追加しておいた('C-c c n' と 'C-c c N' で呼び出し)。howm で 'C-c , c' するのと同じ感覚で作れる。こちらもリモートホスト上にファイル名で悩む必要なくさくっとノートを書いておくことができて良い(そのかわり howm みたいに grep できないけれど)。
リモートホスト上のファイルへの保存の方を良く使うので、'C-c c' の後のキーは小文字の方をリモートに、大文字の方をローカルに変更。
これから利用する開発環境にログインしたら Emacs が入ってなかったので「とりあえず TRAMP を使うかと」とローカルホストの Emacs からファイルを開こうとしました。しかしホスト名の後の : をタイプしたところで止まってしまいます。
ちょっと調べてみたところリモートホストのログインシェルが zsh のせいでした。
EmacsWiki の https://www.emacswiki.org/emacs/TrampMode を参考にリモートホストの ~/.zshrc の末尾に以下を追加し、TRAMP が正しく動くようにしました。
if [[ "$TERM" == "dumb" ]] then unsetopt zle unsetopt prompt_cr unsetopt prompt_subst unfunction precmd unfunction preexec PS1='$ ' fi
iA Writer のスタイルチェックを使い始めたら、もっとツールでチェックしたくなってきてしまった。
専用ツールやフォームに貼り付けてチェックするタイプではなく、ローカルのテキストファイルに対してそのままチェックできるのがいいなと思って調べたところ、Visual Studio Code (VS Code)の拡張機能「テキスト校正くん」がお手軽に使えるようなのでインストールしてみた。
「テキスト校正くん」をインストールしておくと開いているテキストファイルについてリアルタイムにチェックをかけてくれる。おお便利。結局まだ手に馴染んでいない VS Code 上で文章をカリカリ書くのに抵抗があるので、同じテキストファイルを iA Writer と VS Code で同時に開いて後者は文章チェック表示用のみで使おうかな(iA Writer で保存したら VS Code で自動的に再読み込みしてくれるので)。
こういうの絶対チェック規則を細かく設定したくなってくるやつだ。しばらく使っていい感じなら、 textlint + vscode-textlint に移行しよう。あ、いや Emacs の方がいいな。Emacs なら直接そこで編集する気にもなるし。 TRAMP でリモートホスト上のテキストファイルを編集するときにもチェックできる(だろう)し。
Naney (なにい) です。株式会社MIXIで SNS 事業の部長をしています。
※本サイトの内容は個人的見解であり所属組織とは関係ありません。