お前はVimとEmacsから逃げられない
VimとEmacsは、プログラマーの運命を握る双璧である。それは単なるエディタの枠を超え、OSの深奥に根を張り、あらゆる環境を支配している。
UNIX、Linux、MacOS、そしてWindows――どの道を選ぼうと、彼らの影響下を逃れることは許されない。これは宿命であり、真理である。
なお、この文章の作成にはGPT-4oの力を借りています。
※nanoがエディタならcatやechoもエディタ(自論)
Bash:VimとEmacsの闘争が息づく魔窟
Bashは魔界である。その奥底にはVimモードとEmacsモードという二大勢力の抗争が渦巻いている。初期設定ではEmacsキーバインドが支配し、Ctrl+A
で行頭、Ctrl+E
で行末に移動する操作がデフォルトとして君臨している。しかし、コマンド一つでその秩序は崩壊する。
set -o vi
――この呪文を唱えた瞬間、BashはVimモードへと変貌を遂げる。そこで待ち受けるのは、Vimの編集モードが清濁併せ呑む世界だ。
Bashを使う限り、ユーザーは 「Vim」か「Emacs」かの二択を迫られる。 第三の選択肢など存在しない。ここは逃げ場なき戦場である。
真理の第一方程式
(Vim | Emacs) = Bash
MacOS:Emacsが浸透する静かなる支配
MacOSは、Emacsが静かに息づく庭園である。その起源を遡ればNEXTSTEPに行き着き、そこには既にEmacsキーバインドの種が蒔かれていた。Ctrl+A
で行頭に、Ctrl+E
で行末に――Macユーザーの日常は、知らず知らずのうちにEmacsへ飲み込まれている。
だが、それだけではない。MacOSにはVimもまたプリインストールされている。ターミナルを開き、vi
と入力すれば、その瞬間にVimの世界が眼前に広がる。MacOSはVimとEmacsが共存しながらも緊張関係を保つ異界なのだ。
このように、MacOSを使う者は、Emacsの影響を逃れられず、Vimの存在を無視できない二重の呪縛に囚われる運命にある。
真理の第二方程式
Vim * Emacs = MacOS
Linux:Vimが覇を唱える大陸
Linuxは、Vimが闊歩する帝国である。すべてのLinuxディストリビューションはVimの存在を前提として設計されている。ターミナルを開けば、そこに待つのはvimであり、設定ファイルを編集しようとすればVimが呼び出される。
さらに、リモートサーバーにSSHで接続した場合でも、Vim以外の選択肢など存在しない。そこにあるのは、ただひとつの真実――「Vimが唯一のエディタである」 という現実だ。たとえ最小構成でLinuxをインストールしようが、そこで待つエディタはVimのただ一つである。
Linuxは、Vimの影響から逃れる余地を一切与えない。使う者すべてがその支配下に置かれる。
真理の第三方程式
Vim = Linuxディストリビューション
Windows:WSLがもたらす昇華
かつてWindowsは、VimやEmacsから逃れる避難所のように見えた。しかし、その幻想はWSL(Windows Subsystem for Linux)の登場によって打ち砕かれる。
WSLは、WindowsにLinuxの魂を吹き込む存在である。これを導入すれば、Bashが使えるようになり、VimモードかEmacsモードの選択を迫られる。そして当然ながら、vimもプリインストールされている。
ここに至り、Windowsはもはや独立した存在ではない。それはLinuxへと昇華され、Vimの支配下に組み込まれるのだ。
真理の第四方程式
Vim = Linux = WSL = Windows
結論:お前らは逃げられない
Bashは「Vim」と「Emacs」の抗争が続く魔窟であり、MacOSは「Vim」と「Emacs」が共存する異界である。LinuxはVimの覇権のもとに統治され、WindowsはWSLによってLinuxに呑み込まれた。
これらすべての事実が指し示すのは、「VimとEmacsから逃れる術は存在しない」 という冷厳な現実である。この記事を読み終えた今、あなたがすべきことは明確だ。まず、エディタとしてVimかEmacsのどちらかを選べ。そして、MacOSを使うなら、その両方から逃れられないことを心に刻んでおくが良い。