文化圏としてのVimとかEmacsとか

Emacsは抽象環境ぽさがある

目次
  • 便宜上Vim文化圏という表現をしますが、どちらかと言えばnot-Emacs文化圏という方が適切な気もする。
  • そもそも私はnvimは1,2年使いましたが、Emacsはまだ1ヶ月も使ってないのでEmacc側の考察が甘いのは自覚しています

3行まとめ

日記を書くには

Vim文化圏

例えば日記を書こうとしたら…

vim ~/journal/2026/Aug/22.md

たぶんこんな感じでファイルと日付を対応させて管理しようとする。obsidianとかの影響が強そう。

要はファイルシステムとかのコンピュータに沿った思想。

Emacs文化圏

Vimとは異なり、コンピュータから距離を取った抽象化環境という印象。

例えば日記を書こうとしたら…

journal.org

* 2026
** 2026-08 August
*** 2026-08-22 Saturday

Emacs文化圏的にはこのようにファイルを分けずに、日付という意味は記号によって単一ファイル内に分けて記述する。

ファイルシステムに閉じるかどうか

つまりVim文化圏はファイルによって日付を表現し、Emacs文化圏は*という記号によって日付を表現する。

どちらもプレーンテキストをベースに扱うという点では同様だけれど、その操作方法が異なる。実際のところ上記の例では日記の検索方法などは異なる。vimは日付とファイルが一致しているため、ファイラー的なものから日記を探すことになる。Emacs(org-mode)はorg-captureなどのインターフェースを通して検索する。1

余談

私はorg-modeとEmacsの関係を割と誤解していたというか、org-modeはもっとEmascにロックインというか専用にされていると思っていました。ただ実際のところその実態はプレーンテキストであり、grep等の汎用的なコマンドで扱える代物だったなぁと。立場的にはMarkdownと変わらない。

開発的な(gitとか色々)

Vim文化圏

Emacs文化圏

これもコンピュータとの距離

Vimはあくまでshellから起動されるツールの一つで、レイヤーとしてはgrepなどのコマンドと同じくらいの層。2

EmacsはコンピュータとEmacsの間に分厚いインターフェースを用いる。それによってユーザーはEmacsの操作として様々なものを操作できる。vimとは異なりコマンドと共存というよりは全てを覆い隠して、Emacsのものにす感じ。

shell
 ├─ rg
 ├─ git
 ├─ fd
 └─ vim
         Emacs
  ┌────────┼────────┐
files     Git      LSP
  ↓        ↓        ↓
buffer   Magit     xref

Footnotes

  1. 実態はプレーンテキストなのでrg -n -A 20 '^\*\*\* 2026-08-22\b' journal.orgとかでも検索できる

  2. 厳密にはこのレベルの高機能TUIをCLIと同レイヤーとすることには懐疑的ではあるのですが、今回はvimとemacsの話なので深くは触れない。