Emacs入門

Emacsは「拡張できるテキストエディタ」であると同時に、 Emacs Lisp によって“作業環境そのもの”に育てられるのが魅力です。:contentReference[oaicite:1]{index=1}

ポイント
編集 + 自動化 + 開発環境
つまずきやすい所
日本語入力 / キーバインド
育て方
パッケージ + init.el

Emacsで何ができますか?

Emacsは「編集機能に加えて、拡張・自動化が前提の環境」です。 中心に Emacs Lisp インタプリタ があり、必要に応じて機能を追加できます。:contentReference[oaicite:2]{index=2}

編集・文章

  • 強力な検索/置換、矩形編集、マクロ記録
  • Markdown/Orgでメモ・ドキュメント作成
  • プロジェクト内横断検索(grep等)

開発

  • 言語モード(補完、整形、Lint、テスト)
  • Git操作(例: Magit)
  • REPL/デバッグ/ターミナル統合

“環境化”

  • ファイラー(dired)
  • タスク/日報/ナレッジ整理(Org)
  • 自分専用のショートカットやコマンドを追加

学びやすさ

  • 内蔵チュートリアル(Emacsの中で学べる)
  • ヘルプが強い(describe-function等)
  • 設定がそのまま資産(init.el)
補足

Emacsが「エディタ以上」と言われるのは、拡張の中心が“外部プラグイン”ではなく、 “Emacsの中の言語(Elisp)で一貫している”からです。:contentReference[oaicite:3]{index=3}

Vim/ViとEmacsの違い

観点 Vim / Vi Emacs
思想 モード切替で編集速度を最大化 拡張・自動化して環境を育てる
操作 ノーマル/インサート等のモードが核 キーバインド+コマンド(M-x)中心
拡張 Vim script/Lua(Neovim)等 Emacs Lispが中核(インタプリタ内蔵):contentReference[oaicite:4]{index=4}
ハマりやすい所 モードに慣れるまで誤操作 初期設定の選択肢が多い(育て方)
共存 EmacsでVim風操作(evil-mode)も可能

結論:どっちが上、というより「好みの身体性」と「環境の作り方」が違います。 “編集だけで完結したい”ならVim、“作業環境を統合したい”ならEmacsが刺さりやすいです。

Emacsで日本語が打てないのはなぜ?

よくある原因は大きく2つです:

① OS側IMEと競合/未連携

Linuxだと fcitx/ibusmozc を使っていても、 Emacsの起動方法やGUI/TTYの違いで「Emacsだけ反応しない」ことがあります。

② Emacs内のInput Methodを使っていない

Emacsは C-\(toggle-input-method)で Emacs内蔵の入力メソッドを切り替えできます。:contentReference[oaicite:5]{index=5}

まずは「Emacs内入力」を試す(最短)

  1. Emacsで適当なバッファを開く
  2. C-\ を押す(未選択なら入力メソッド名を聞かれます):contentReference[oaicite:6]{index=6}
  3. japanese などを選ぶ
init.el 例(UTF-8 + 日本語環境 + トグル)
;; 文字コード
(prefer-coding-system 'utf-8)
(set-language-environment "Japanese")

;; Emacs内入力メソッド(まずはシンプルに)
(setq default-input-method "japanese")

;; C-\ は toggle-input-method(標準)で切替できます
;; 必要なら [zenkaku-hankaku] などに割り当てるのも手
;; (global-set-key [zenkaku-hankaku] #'toggle-input-method)

C-\ は入力メソッドのON/OFF、C-x RET C-\ は入力メソッドの選択です。:contentReference[oaicite:7]{index=7}

LinuxでMozcをEmacsに寄せたい(例)

「japanese-mozc」を default-input-method に登録して toggle-input-method で切り替えられるようにする、という方向が紹介されています。:contentReference[oaicite:8]{index=8}

Emacsの読み方

一般的には英語圏で「イーマックス(E-max)」のように発音する説明が多いです。:contentReference[oaicite:9]{index=9} 日本語では慣例的に「イーマックス」「イーマクス」あたりが通りやすいです。

2020年代のEmacs入門(何から始める?)

1) まずは“素のEmacs”で基本操作

チュートリアル+ファイル操作+検索を最短で。

2) 日本語入力と文字コードを安定させる

ここが安定すると、体験が一気に楽になります。

3) パッケージで拡張(ELPA/MELPA)

Emacsは標準で package.el を持ち、GNU ELPA などから導入できます。:contentReference[oaicite:10]{index=10}

4) “自分の作業”に合わせて育てる

メモ、Git、補完、整形、プロジェクト検索…必要な分だけ。

やりがち注意

最初から「全部入り設定」を入れると、原因切り分けが難しくなります。 最小 → 追加の順が一番ラクです。

最初に覚えるキー(最低限)

C-x C-fファイルを開く
C-x C-s保存
C-x C-c終了
C-gキャンセル(困ったらこれ)
M-xコマンド実行
C-\入力メソッド切替(日本語など):contentReference[oaicite:11]{index=11}

パッケージ管理(ELPA / MELPA)

Emacsは標準の package.el でパッケージ導入ができ、 GNU ELPA のほか、MELPA を追加して使う流れが一般的です。:contentReference[oaicite:12]{index=12}

init.el 例(MELPA追加の最小)
(require 'package)

;; 追加リポジトリ(MELPA)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)

(package-initialize)

;; 初回は M-x package-refresh-contents
;; その後 M-x package-install で導入

おすすめ構成(初心者→中級)

初心者(まず快適に)

  • 日本語入力(このページの設定)
  • 補完(company / corfu系)
  • 検索強化(consult系など)

※流派が多いので“最小で試す”が正解。

中級(開発効率)

  • Git(Magit)
  • プロジェクト管理(project.el / projectile系)
  • LSP(eglot / lsp-mode)
「Emacsがハッカーに愛される理由」っぽい話

Emacs JPの「2020年代のEmacs入門」では、パッケージ管理やリポジトリ(ELPA/MELPA)を含めて、 現代Emacsの入口を整理しています。:contentReference[oaicite:13]{index=13}

FAQ

Emacsで何ができますか?

テキスト編集に加えて、Emacs Lispで機能を足して“作業環境”を作れます。:contentReference[oaicite:14]{index=14}

ViとEmacsの違いは何ですか?

Vimはモード編集中心、Emacsは拡張・統合中心。編集の身体性と環境の育て方が違います。

Emacsで日本語が打てないのはなぜですか?

OS側IMEとの相性(GUI/TTY/起動方法)か、Emacs内Input Method未設定が多いです。 C-\(toggle-input-method)でまず切替を試してみてください。:contentReference[oaicite:15]{index=15}

Emacsの読み方は?

英語圏だと「E-max」的な説明がよく見られます。:contentReference[oaicite:16]{index=16}