Doom Emacsのキーバインドと管理コマンド:標準Emacsとの違い

Doom EmacsはEmacsの機能を拡張し、Vimライクな操作性を取り入れた強力なエディタです。本記事では、標準Emacsとの主要な違いを中心に、キーバインドと管理コマンドについて解説します。

主要なキーバインドの違い

1. 基本操作

操作 標準Emacs Doom Emacs
コマンド実行 M-x SPC : または M-x
ファイルを開く C-x C-f SPC .
ファイルを保存 C-x C-s SPC f s または :w (Evilモード)
バッファ切り替え C-x b SPC b b
バッファ削除 C-x k SPC b d

2. ウィンドウ操作

操作 標準Emacs Doom Emacs
ウィンドウ分割(垂直) C-x 3 SPC w v
ウィンドウ分割(水平) C-x 2 SPC w s

3. 検索と置換

操作 標準Emacs Doom Emacs
インクリメンタル検索 C-s / (Evilモード) または C-s
プロジェクト内検索 なし(追加パッケージが必要) SPC s p

4. その他

操作 標準Emacs Doom Emacs
キーバインドのヘルプ C-h k SPC h k
プロジェクト切り替え なし(追加パッケージが必要) SPC p p
設定ファイル編集 手動でファイルを開く SPC f p

スクロールのキーバインド

Doom EmacsはVimライクなスクロール操作を採用しています:

  • 1ページ分下にスクロール: Ctrl-f または <PageDown>
  • 1ページ分上にスクロール: Ctrl-b または <PageUp>
  • 半ページ分下にスクロール: Ctrl-d
  • 半ページ分上にスクロール: Ctrl-u

コメントアウトとアンコメント

Doom Emacsでは以下のキーバインドでコメント操作を行います:

  • 選択した行をコメントアウト/アンコメント: gcc
  • 選択範囲をコメントアウト/アンコメント: gc(ビジュアルモードで範囲選択後)

テキスト選択(Visual Mode)

標準EmacsではCtrl+SPCでマーク開始しますが、Doom Emacsではvimのようにvisual modeで選択します:

  • 文字単位の選択: v
  • 行単位の選択: V(Shift + v)
  • 矩形選択: Ctrl-v
  • 単語選択: viw
  • 選択モードの終了: ESCまたはCtrl-[

選択後の操作:

  • コピー: y
  • 切り取り: d
  • 削除: x
  • 置換: c
  • コメントアウト/アンコメント: gc

Doomコマンドの基本

Doom Emacsの管理にはdoomコマンドを使用します。主要なコマンドは以下の通りです:

  1. doom sync: 設定の変更を反映し、パッケージを更新
  2. doom upgrade: Doom Emacsとそのパッケージを最新版にアップグレード
  3. doom doctor: Doom Emacsの環境に問題がないかチェック
  4. doom env: Doomの環境変数を更新
  5. doom purge: 不要なパッケージや古いビルドファイルを削除

設定ファイルを変更した後は、必ずdoom syncを実行して変更を反映させましょう(init.elpackages.elconfig.elは不要)。Doom Emacsにインストールされているパッケージによってはaptでインストールしなければならないソフトウェアを呼び出すことがあるので注意が必要です。doom doctorで確認しましょう。1

sudo apt install ripgrep fd-find shellcheck

以下はREADMEからの機械翻訳です。マニュアルには更に詳しい説明があります:

  • doom sync は、不足しているパッケージをインストールし、孤立したパッケージを削除し、キャッシュを再生成することで、プライベート設定を Doom と同期します。プライベート init.el または packages.el を変更するとき、または OS パッケージ マネージャーを介して Emacs パッケージ (mu4e や agda など) をインストール/削除するときは、必ずこれを実行します。
  • doom upgrade は、Doom を最新リリースおよびインストールされているすべてのパッケージに更新します。
  • doom doctor は、システムと設定の一般的な問題を診断します。
  • doom env は、起動時に Doom が読み込むファイルにシェル環境のスナップショットをダンプします。これにより、Emacs は PATH などを継承できます。

まとめ

Doom Emacsは標準Emacsとは異なるキーバインドを採用していますが、これにより直感的で効率的な操作が可能になっています。ただし、従来のEmacsユーザーにとっては学習曲線がある点に注意が必要です。doomコマンドを効果的に使用することで、環境を最適な状態に保ち、スムーズな編集体験を維持することができます。