Mouをコマンドラインから簡単に使えるようにした
結論から言うと、この記事はMouを[mou
]というコマンドで起動できるようにするための記事です。
TextMateとかだと
$ mate filename
ってやると、filenameのファイルをTextMateで開ける。
これをマークダウンエディタのMouでもやりたかった。
調べてみたら下の参考1が見つかったんだけど、このページだけだとやり方がよく分からなかったので参考2のページも参考にしながら、実現させた。
【参考1】: コマンドラインでMouを開く
【参考2】: 自作のスクリプトをコマンド検索パスに保存する
そもそもMouにはコマンドラインから起動できるらしいのだけど、コマンドが
$ open -a Mou # Mouを開く
$ open -a Mou filename.md # filename.mdを開く
とか、ちょっと長くて面倒なコマンドになっている。 しかも下のコマンドでは、既存のファイルを開くだけで、新しいファイルは作成できない。。。
ということで、
・[mou
]だけ打てば良くて
・新しいファイルも作成できる
コマンドを作ることにする。
作業開始
適当なディレクトリで
$ vim mou
mou
#!/bin/bash
if test $# -eq 0; then
`open -a Mou`
elif test $# -eq 1; then
`touch ${1}`
`open -a Mou ${1}`
fi
中身はこれだけ。
touch ${1}
の部分はなくてもいいけど、これを書かないと新しくファイルを作りたいときにエラーになる。
すでにファイルが存在する場合にtouch
をしても、タイムスタンプが更新されるだけなので、問題なし。
書き終わったらmouファイルの実行権限を変更しておく。
$ chmod a+x mou
でもこのままだと、コマンドを打つときに
./mou filename.md
とかしないといけなくて気持ち悪いし、そもそもmouのファイルがあるディレクトリにいないと絶対パスを打たないといけない… クソやん!!!!
ってことで、mou
コマンドを使えるようにする。
$ sudo cp mou /usr/local/bin/mou
このコマンド一発で完了。 (このやり方を調べるのに10分ぐらいかかったんだけど…笑)
これで
mou filename.md
ができるようになりました! 便利!!!!!!