handlename's blog

コード片など

ファイルがなければ作ってemacsで開くコマンド

※MacのCocoa Emacsを使っている場合のはなし

alias e="open -a emacs"

いままでは .zshrc に↑のようなエイリアスを作ってファイルを開くショートカットにしていた。

$ e hoge

とすればカレントディレクトリの hoge というファイルを emacs で開けるという寸法。

ただ、ファイル hoge が無い場合は開けない。

$ e hoge
The file /path/to/hoge does not exist.

これはちょっとイヤなので、存在しないファイルは touch してから開くようにした。~/bin に e という名前でシェルスクリプトを作成。

#!/bin/sh

if [ ! -e $1 ] ; then
    touch $1;
fi

open -a emacs $1;

そのまんま、ファイルがなければ touch してから開いている。だけ。
(ファイルが存在しないときだけ処理を行う場合ってもっとスマートな書き方がありそうだけど、まあいいか) → 「!」付ければいいだけか!というわけで修正しました(2011-06-05 19:44)。

※注意
.emacs

(server-start)

としていないと新しいウィンドウが開いちゃいます。たぶん。