はじめに

EXWM (https://github.com/ch11ng/exwm) はタイトルのとおり,Emacsをタイル型ウインドウマネージャにするものです。Remacsでも動きます。どのような見た目になるかは公式のスクリーンショットがわかりやすいです (https://github.com/ch11ng/exwm/wiki/Screenshots)。

EXWMの導入方法や基本的な使い方はこちらを参考にしました (https://medium.com/@h.taiju/emacs-as-window-manager-68ddcec3ba97)。

手順

パッケージのインストール

MELPAに登録されています。

M-x p-ins exwm

xinitrcのコピー

パッケージのインストールが終わると,elpa/exwmの中にxinitrcがあるので,それをホームフォルダにコピーして名前を.xinitrcに変更して実行権限を与えます (chmod +x 等)。既に.xinitrcを作っている方は事前に必ずバックアップをしておいてください。なおremacsを使っている方はexwmのxinitrc最終行のemacsをremacsに書き換えておきます。

init.elへの追加

(require 'exwm)
(require 'exwm-config)
(exwm-config-default)

ログインメニューへの登録

/usr/share/xsessionsにemacs.desktopというファイルを作成し,以下の内容で保存してください (remacsを使っている場合はExecの部分がremacsになります)。保存し終えたら再起動します。

[Desktop Entry]
Name=EXWM
Comment=Emacs-based window manager
Exec=emacs
Type=Application

ログイン画面の右上か右下にデスクトップ環境を選択するアイコンがあると思うので,EXWMを選んでログインしてください (参考: https://www.youtube.com/watch?v=Gk9-q8tXbMs)。

基本的な使い方

  • ソフトウェアを起動する: Shift-Super-& (SuperキーはWinキーに割り当てられていることが多い)
  • ワークスペースを行き来する: Super-w

一歩進んだ使い方

  • ワークスペース1に移動: Super-1
    • ワークスペース2へはSuper-2など,数字キーと対応
  • lineモードとcharモード
    • exwmで起動したソフトウェアには,emacsの操作を受けつけるlineモードと,ソフトウェア特有のキー操作を受けつけるcharモードという2つのモードがある
    • charモードでないと,Control-cなどソフトウェア特有のキーボードショートカットが使えない (例: ターミナルを起動してControl-cで処理を中止させるときなど)
    • charモードへはControl-c Control-kで切り替え,Super-rでlineモードへ戻る

ワークスペースを増やす,マルチディスプレイの方法など,詳細な設定は公式のwikiを見てください。

日本語入力の方法については別記事を作りました (→ EXWMで日本語を入力する)