Linux
 Computer >> コンピューター >  >> システム >> Linux

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

Doom Emacsは、Emacsを誰でも簡単に、気軽に始められるようにすることを目指して開発されたディストリビューションです。Emacs本体には多機能さを説明する何百ページものドキュメントが存在し、初めて触れる人にとってはその敷居の高さが大きな壁となりがちです。

こうした充実したドキュメントは、すでにEmacsに慣れ親しんだユーザーや、じっくり学ぶことが好きな人にとっては有益ですが、「まず試してみたい」という初心者にとっては必ずしも親切とは言えません。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

Doom Emacsは、余計な部分をそぎ落とし、Emacsの持つ本質的な強みだけを凝縮することを目指しています。基本的な操作のたびにマニュアルを確認しなくても済むようになりながら、Emacsならではの高い拡張性はそのまま活かせます。その結果、ユーザーのニーズに合わせて自由にカスタマイズできるEmacs環境が手に入るのです。

Doom Emacsのインストールは比較的シンプルです。事前に準備が必要なのは以下の3点だけです。

  • 素の状態(バニラ)のEmacs 27.1
  • ripgrep
  • Git

Emacsとripgrepのインストール

Emacsとripgrepは、主要なLinuxディストリビューションのほぼすべてのリポジトリで提供されています。例えばDebianやUbuntu 21.10では、aptを使って次のコマンドでインストールできます。

sudo apt install emacs-gtk ripgrep

Arch Linuxの場合はpacmanを使用します。

sudo pacman -Syu emacs ripgrep

Fedoraではdnfを使います。

sudo dnf install emacs ripgrep

Void Linuxではxbpsを使用しましょう。

sudo xbps-install emacs-gtk2 ripgrep

ここでは例として、Void LinuxシステムにEmacsとripgrepをインストールしています。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

注意すべき点として、Emacsにはさまざまな種類(フレーバー)が存在します。通常はパッケージマネージャーが適切なバージョンを選んでくれますが、稀にこの処理がうまく動かないこともあります。

そのため、自分がどのバージョンをインストールしているのかを把握しておくことが大切です。Doom Emacsで快適に使うには、グラフィカル環境で動作するEmacsを選ぶ必要があります。具体的には以下のいずれかです。

  • X11
  • GTK-2
  • GTK-3

ここまで確認できたら、次はGitのインストールに進みましょう。

Gitのインストール

Doom Emacsをインストールするには、インターネット上のリモートコードリポジトリからソースコードを取得する必要があります。そのためにGitをインストールします。Gitがあれば最新のコードを即座にコピーできるだけでなく、メジャーバージョン間のアップデートもスムーズに行えます。

Emacsと同様に、GitもあらゆるLinuxディストリビューションで標準的に利用可能です。DebianやUbuntuではaptでインストールできます。

sudo apt install git

Arch Linuxではpacmanを使用します。

sudo pacman -Syu git

Fedoraではdnfを使います。

sudo dnf install git

Void Linuxではxbpsを使用しましょう。

sudo xbps-install git

ここでもVoid Linux環境にGitをインストールしています。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

Doom Emacsのインストール

Doom Emacsのインストール自体は、ほんの数個のコマンドを実行するだけで完了します。まず、以下のコマンドでリポジトリをクローンします。

git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.d

これはDoom Emacsのリポジトリを自分のマシンに取得するためのGitコマンドです。

  • cloneは、コマンド実行時点の最新のリポジトリをコピーすることを意味します。
  • --depthオプションは、リポジトリの履歴を直近のバージョンのみに制限し、ダウンロード量を抑えます。

このコマンドでは、リポジトリをEmacsのデフォルト設定ディレクトリに保存しています。そのため、事前に同名のディレクトリが存在しないことを確認する必要があります。以下のコマンドで既存のディレクトリを削除しておきましょう。

rm -rf /home/$USER/.emacs.d/

続いて、インストールを実行します。次のコマンドを入力してください。

/home/$USER/.emacs.d/bin/doom install
Doom Emacsとは?特徴とインストール・設定方法を徹底解説 Doom Emacsとは?特徴とインストール・設定方法を徹底解説

このコマンドにより、既存のEmacs環境の上にDoom Emacsがインストールされます。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

インストール後の設定

インストール後、トラブルを防ぐためにいくつか追加の設定を行う必要があります。

まず、PATH変数に「/home/$USER/.emacs.d/doom/bin/」ディレクトリを認識させる設定を追加します。「/home/$USER/.profile」ファイルに以下の行を追記してください。

export PATH=$PATH:$HOME/.emacs.d/doom/bin

これでPATH変数にDoomのbinディレクトリが含まれるようになります。設定を反映させるには、一度ログアウトして再度ログインし、環境変数を再読み込みします。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

PATH変数が正しく「/home/$USER/.emacs.d/doom/bin」ディレクトリを認識しているかを確認するには、次のコマンドを実行します。

doom doctor

このコマンドは、インストールが正しく行われたかどうかを診断してくれます。もし過程で問題が発生していれば、doom doctorがその内容を教えてくれるでしょう。

Doomユーティリティ:Doom Emacsの頼れる相棒

doom doctorは、doomユーティリティに用意されている数ある機能のひとつにすぎません。doomユーティリティは、Doom Emacsの変更・更新・修復を行うためのメインプログラムです。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

特に覚えておきたい主要なサブコマンドは以下の通りです。

  • doom doctor:初期インストールに不整合がないかをチェックします。Doom Emacsの使用中に問題が発生した際にも特に役立ちます。Doom関連のすべてのディレクトリと設定ファイルを走査し、潜在的なエラーを検出してくれます。
  • doom upgrade:インストール済みのDoom Emacsを手間なくアップグレードできます。リポジトリの更新を確認し、ローカルのコピーを最新版と同期させ、バージョン間の移行処理も自動で行います。その際、現在のDoom設定をクリーンアップしてからアップグレードを適用します。
  • doom purge:インストール済みの古いパッケージやモジュールを整理します。多数のパッケージを削除した後に実行すれば、未使用の依存関係を一括で取り除けます。また、-gフラグを付けて実行すると、既存のリポジトリを圧縮することも可能です。
  • doom sync:独自のカスタム設定を反映・修復するためのコマンドです。Doom Emacsのインストール時に「/home/$USER/.doom.d/」配下に個人設定用のファイル群が作成されます。syncを実行すると、.doom.dディレクトリ内の設定が.emacs.d側に反映されます。

Doom Emacsの設定方法

.doom.dディレクトリは、Doomに関するすべての設定が格納される場所です。このディレクトリは3つのファイルで構成されています。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説
  • packages.el:どのパッケージを、どこからインストールするかを記述するファイルです。
  • config.el:独自のカスタム設定を記述するファイルです。Doom本体の設定と、追加インストールしたパッケージの設定の両方をここに書きます。
  • init.el:Doom Emacsの中核となる最重要ファイルです。ディストリビューションの全機能の有効化/無効化をここで制御します。

Doomモジュール

Doom Emacsでは150以上のモジュールから好きなものを選択できます。必要なモジュールだけを有効化することで、Doomを自分専用のコンピューティング環境へと仕立て上げられるのです。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

モジュールの追加や削除は、「.doom.d/init.el」ファイル内のdoom!関数を編集するだけで行えます。一般的な構文は以下のような形です。

(doom! :checkers
       (syntax)
       :editor
       (evil)
       :lang
       (org +journal))

モジュールを有効にするには、まず所属するカテゴリを指定します。上の例ではsyntaxモジュールを追加するために、最初にcheckersカテゴリを記述しています。

さらに、各モジュールには特定の機能を切り替えるためのフラグが用意されています。これはGentoo LinuxのUSEフラグに似た仕組みで、必要な機能だけを有効にしてプログラムを細かくチューニングできます。

モジュールにフラグを追加するには、「+」記号に続けてフラグ名を記述します。上の例ではorgモジュールにjournalフラグを追加し、ジャーナル機能を有効にしています。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

編集が完了したら、doom syncを実行して新しい設定でDoom Emacsを再初期化しましょう。

追加パッケージのインストール方法

デフォルトでもDoom Emacsには多数のパッケージが同梱されていますが、それ以外のソフトウェアもリポジトリから簡単に追加インストールできます。その際は「.doom.d/packages.el」ファイル内でpackage!関数を使用します。

Doom Emacsとは?特徴とインストール・設定方法を徹底解説

Doomでのパッケージインストール方法はいくつかあります。最も一般的なのは、ELPAやMELPAといったパッケージリポジトリから取得する方法です。その場合は、packages.elに以下のLispコードを追加するだけです。

(package! name-of-package)

こうすると、package!関数が指定したパッケージを各標準リポジトリから探してインストールしてくれます。

一方、目的のパッケージがEmacs系のどのリポジトリにも存在しない場合は、Gitリポジトリから直接インストールすることも可能です。

(package! name-of-git-package
          :recipe (:host github :repo "username/package"))

この記述により、GitHub上の「username/package」リポジトリから該当パッケージを取得するよう指示できます。

さらに、リモートリポジトリ内のどのファイルを取得するかを細かく指定することもできます。例えば、リポジトリ内の特定の場所からパッケージを取得したい場合は次のように書きます。

(package! another-git-package
          :recipe (:host github :repo "username/package"
                        :files ("package.el" "path/of/*.el")))

これは、多数のパッケージがサブディレクトリごとに整理されたリポジトリからインストールする場合に便利です。この方法なら、パッケージとしてインストールしたいファイルを明確に指定できます。

編集後は、忘れずにdoom syncを実行してDoom Emacsを再初期化してください。

おめでとうございます!これでDoom Emacsの基本インストールが完了し、その仕組みや設定・拡張の方法についても基礎を身につけられました。Linux向けの生産性アプリをお探しの方は、ぜひ関連記事もチェックしてみてください。

よくある質問(FAQ)

1. Doom Emacsをインストールしましたが、起動すると真っ白な画面しか表示されません

この症状は、多くの場合.doom.dディレクトリに問題があり、Doom Emacsが設定を読み込めないことが原因です。まず、.doom.dディレクトリが存在すること、そしてinit.el・packages.el・config.elの3つのファイルが揃っているかを確認しましょう。

また、生成されたinit.elファイルが不正な形式である場合や、doom!関数ブロックが含まれていない場合にも同じ現象が起こります。その場合は、使いたいモジュールを含んだdoom!関数ブロックを作成し直してください。

2. package.elでパッケージを管理していますが、Doom Emacsでも使えますか?

いいえ、使えません。Doom Emacsは独自のパッケージ管理システムを採用しています。追加のソフトウェアをインストールする際は、Doom Emacsが提供するpackage!関数を使用する必要があります。

3. インストールしたパッケージが不要になりました。アンインストールするにはどうすればいいですか?

Doom Emacsでパッケージを削除するのは非常に簡単です。「.doom.d/packages.el」内の該当箇所を以下のように変更します。

(package! some-package :disable t)

その後、doom syncを実行してDoom Emacsを再読み込みすれば、次回起動時にそのパッケージは無効化・削除されます。

  1. Void Linuxとは?特徴とインストール方法を完全ガイド

    Void Linuxは、強力でありながら取り組みやすいオペレーティングシステムを目指すLinuxディストリビューションです。シンプルさと安定性を両立するため、initシステムに「runit」、そして独自の軽量パッケージマネージャーを採用しています。 Arch Linuxと同様に、Void Linuxは「ローリングリリース」モデルと「ユーザー中心」の設計思想を採用しています。つまり、常に最新の状態へ更新され続ける一方、インストール直後の状態は必要最小限の構成になっています。この特性により、自分が理解し、自由にカスタマイズできる柔軟なOSを求める上級ユーザーにとって魅力的な選択肢となっていま

  2. BIOSとは?仕組みとWindows 10での正しい更新方法を徹底解説

    パソコンでキーボードの不具合、電源まわりのトラブル、インターネット接続の問題や動作速度の低下などが発生したとき、その原因がBIOSに関連しているケースは少なくありません。修理業者やITの専門家に相談すると、本格的なトラブルシューティングの前に「まずBIOSを更新してみてください」とアドバイスされることも多いでしょう。実際、BIOSの更新だけで問題が解決するケースも多くあります。 BIOSとは? BIOS(Basic Input/Output System:基本入出力システム)は、PCのマザーボード上にある小さなメモリチップに格納されたソフトウェアで、CPUやGPUなど、PCに搭載されたすべての