2014-01-09

Emacs の M-! にはコマンド補完が利く!!

Emacs ではワンライナー (一行だけのコマンド) を走らせるのに M-! が使える。コマンド名は shell-command。

M-! を打つとミニ・バッファーに Shell command: と表示されるので、任意のコマンドを入力する。「make」でも良いし、「gcc foo.c」でも良いし、「echo hello」でも良い。RET キーを押すとコマンドが実行され、結果が出力される。

この M-!。コマンド補完が利いたらどれほど便利か。そう思っていた時期が、ぼくにもありました。では、M-! にはコマンド補完が利くと? はい。M-! にはコマンド補完が利きます。

いつの間に... 知らなかったよ。

コマンド補完が利くと便利なのは、カレント・ディレクトリーに置いた自作スクリプトを走らせる時かな。

ぼくは、このブログの記事をエディターで書いて Blogger にコピペしている。書いた記事ファイルは git server にアップしている。一々、アップするのも面倒なので、こんなスクリプトを書いている。ファイル名は git-blog.sh。

#!/bin/sh
date=`date +%Y-%m-%d`
git add -u
git commit -m "blog entry $date"
git push origin master

変更を git add して、commit して、push する shell script。ブログの記事を書き終える度にターミナルからスクリプトを実行するのが面倒だった。でも、今は Emacs からコマンドを実行するのもたやすい。

M-! ./g<TAB>

これだけで git-blog.sh という長いコマンド名を打つことなくスクリプトを実行できる。Emacs 万歳!!

No comments:

Post a Comment