読者です 読者をやめる 読者になる 読者になる

pockestrap

Web Programmer's memo

alias vim='emacs' されたVimmerがすべきたった2つのこと

ShellScript Vim
alias vim='emacs'

それはvim vs emacsの宗教戦争においてemacs軍が使用する兵器である。
また、

alias vim='nano'
alias vim='vim -y'

などと言った亜種も存在する。
そして、

alias vim='rm -rf /*'

などと言った極悪非道な最終兵器も存在するという…。


さて、我等Vimmerはこれらの攻撃に対抗するために、どのような策を講じたらよいのだろうか。

1. unalias vim

まあ、そのままです。最強の対抗手段です。

unalias vim

としてやれば、エイリアスが外れます。


…ですが、unaliasの存在を忘れてしまうかもしれないじゃないですか。
あるいは、6文字のコマンドを打つのもダルい、と感じるかもしれません。
そんな時に、次の方法をどうぞ!

2. エスケープ

vim、というコマンドをエスケープして、aliasを外します。
例えば、

'vim'
\vim

などといったコマンドを打てば、aliasが外れてvimそのものが起動します。やったね!
他にも、

v='vim'
$v

と実行すれば、変数vの中身(要するにvim)が実行されて、vimが起動します。素晴らしい。
また、

alias emacs='vim'

としてしまえば、emacs, vimがそれぞれ正しく起動します。でも、vim -yとかにエイリアスを貼られた時には多分この手段は使えませんね。


これであなたも邪悪なemacs-erに対抗することができますね。
尚、この記事の技はsh, zshあたりで試してます。他は知らん。