なぜ伝説のエンジニアはEmacsを選ぶのか?VS Codeを超越する「拡張」という名の哲学
こんにちは。開発環境の深淵を覗き続け、コードを書くことそのものを「芸術」へと昇華させようともがいている一人のエンジニアです。
皆さんが普段使っているVS Codeは、間違いなく現代における最高傑作の一つです。しかし、なぜ何十年も前に生まれた「Emacs」を使い続けるエンジニアが、今なお世界中に存在するのでしょうか。「枯れた技術」だから? いいえ、違います。Emacsは「エディタ」ではなく「エディタという名のOS(オペレーティングシステム)」だからです。
今日は、VS CodeとEmacsの決定的な違いを紐解きながら、なぜEmacsがあなたの開発体験を根本から変えてしまうのか、その真髄をお話ししましょう。
—
1. VS Code vs Emacs:思想の根本的な違い
VS Codeは「ユーザーがやりたいこと」を先回りして用意してくれる「最高級のホテル」です。チェックインすれば、必要な設備がすべて揃っています。
対してEmacsは、「真っさらな土地と、最高品質の工具一式」です。ここに自分の城を建てるのはあなたです。
なぜEmacsを選ぶのか?その決定的な理由
- 拡張の次元が違う: VS Codeの拡張機能は「プラグイン」ですが、Emacsの拡張は「Emacs Lisp(Elisp)」という言語そのものを使って、エディタの深部を直接書き換える行為です。エディタの挙動を自分の思考の速度に同期させることができます。
- 環境のポータビリティ: VS CodeはGUIに依存しますが、Emacsはターミナル(CUI)でもGUIでも全く同じキーバインド、同じ設定で動作します。SSH先のサーバーで、ローカルと同じ感覚でコードを操れる。この快感を知ると、もう他の環境には戻れません。
- 「OS内でOSを動かす」概念: メール、カレンダー、ターミナル、Git操作、PDF閲覧。これら全てをEmacs内で完結させると、コンテキストスイッチ(ウィンドウを切り替える脳の負荷)が限りなくゼロになります。「Emacsを開く」=「仕事を開始する」という、至高の集中状態に入れるのです。
—
2. Emacsのセットアップ:地獄の入り口、そして楽園への扉
Emacsのインストールは簡単ですが、設定をゼロから書くのは修行です。ここでは、現代のエンジニアがEmacsを導入する際の「定石」である、パッケージマネージャ「straight.el」と「use-package」を用いたモダンな構成を提示します。
インストール(macOSの場合)
まずはHomebrewで、GUI対応のEmacsをインストールしましょう。
GUI機能をフルに含んだEmacsのインストール
brew install –cask emacs-plus@29
動作確認:Emacsの心臓「init.el」
Emacsの設定は `~/.emacs.d/init.el` に記述します。まずは、Emacsの基本である「パッケージ管理」を確立する最小限のコードを書いてみましょう。
;;; init.el — Emacsの心臓部
;;; 以下のコードは、拡張機能を管理する「use-package」を読み込むための準備です
(setq package-enable-at-startup nil)
;; パッケージ管理の決定版「straight.el」を導入(GitHubから直接読み込むため極めて高速)
(defvar bootstrap-version)
(let ((bootstrap-file
(expand-file-name “straight/repos/straight.el/bootstrap.el” user-emacs-directory))
(bootstrap-version 6))
(unless (file-exists-p bootstrap-file)
(with-current-buffer
(url-retrieve-synchronously
“https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el”
‘silent ‘inhibit-cookies)
(goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file))
;; use-packageで設定を整理する(設定の可読性が劇的に上がります)
(straight-use-package ‘use-package)
(setq straight-use-package-by-default t)
(message “Emacsのセットアップが完了しました!”)
—
3. HelloWorldを超えて:現場で震えるほど役立つ「魔改造」の例
インストールしただけでは、Emacsはただのメモ帳です。ここから、あなたの開発を劇的に楽にする「魔法」を一つだけ紹介します。
プロジェクト移動を瞬時に行う「Projectile」
多くのファイルを扱う開発現場において、ファイルを探す時間は無駄です。`Projectile`を導入すれば、プロジェクト内のファイルを正規表現やパスで瞬時にジャンプできます。
(use-package projectile
:config
(projectile-mode +1)
;; Ctrl+c p f でプロジェクト内のファイル検索
(define-key projectile-mode-map (kbd “C-c p”) ‘projectile-command-map))
この設定を追加して再起動してみてください。`C-c p f` を押した瞬間、VS Codeの「ファイル検索」を遥かに凌駕するレスポンスで、あなたのプロジェクト内の全ファイルが指先に吸い付いてきます。
—
最後に:なぜ今、Emacsなのか
エンジニアにとって「エディタ」は、単なる道具ではありません。思考を具現化するための拡張現実(AR)です。
VS Codeは「誰が使ってもすぐに80点を出せる」素晴らしいツールです。しかし、Emacsは「自分専用の120点の環境を、一生かけて育て上げる」ための相棒です。
最初はキーバインドを覚えるのに苦労するかもしれません。しかし、一度指がEmacsのリズムを覚えると、あなたの思考はキーボードを通じて直接PCに流れ込むようになります。
まずは今日、`init.el` に一行書いてみてください。そこから、あなただけの「最強の開発OS」が始まります。何か分からないことがあれば、いつでも聞いてください。この深い森の歩き方を、また共有しましょう。