2013年01月07日

Gitでtypoしたコマンドの正しい綴りを推測、自動実行させる

Avner Cohen : Git - Autocorrect spelling

へー、知らなかった。というわけで紹介。


Gitコマンドを打つ時(いや、Gitに限らないが)、何らかのtypoを犯してしまう事は良くある。

例えば、

git pusj	# 本当はpush

勿論Gitに"pusj"なんてコマンドは無いので、本来ならばエラーとなる。

エラーを確認し、正しいコマンドを打ち直すのは何とも面倒だ。しかし、ユーザーが意図していたコマンドを推測し、それを実行するようにGitを設定する事が出来る。

その為にはhelp.autocorrectを使う。

git config --global help.autocorrect 1

help.autocorrectの引数は、補完対象のコマンドを実行するまでの待ち時間(0.1秒単位)である。上記の場合であれば0.1秒待つ事を意味する。

先の"pusj"の場合であれば、"push"のtypoである事が推測出来るので、Gitは以下の警告メッセージを出力後、指定の時間だけ待ってから"push"を実行する。

WARNING: You called a Git command named 'pusj', which does not exist.
Continuing under the assumption that you meant 'push'
in 0.1 seconds automatically...

(勿論"0.1 seconds"の部分は、実際にhelp.autocorrectに設定した値によって変動する。)

待ち時間が在るのは、ユーザーの意図と異なる推測が行われた時に、それを(例えばCTRL-Cで)キャンセル出来るようにする為だろう。

なお、値を0にすると候補の列挙のみ(つまりデフォルトの挙動)、負数にすると待ち時間無しに推測したコマンドを実行する。

因みに私は20、即ち2秒待機するように設定している。誤った推測をキャンセルする事を考えると、数秒のウェイトは必要ではないかと思う。

posted by 天井冴太 at 02:34
"Gitでtypoしたコマンドの正しい綴りを推測、自動実行させる"へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。