EXWM

提供: ArchWiki
2017年9月11日 (月) 19:13時点におけるKusakata (トーク | 投稿記録)による版 (同期)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

EXWM は Emacs がベースのウィンドウマネージャです。

インストール

emacs がインストールされていることを確認してください。また、xorg-xinit が必要です。

Emacs の中から EXWM をインストール: M-x package-install exwm RET

xinitrc を編集して以下を追加:

exec emacs

emacs の init ファイルに、以下を追加 (デフォルト設定を使用する場合):

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

カスタム設定を使いたい場合、(exwm-config-default) の代わりに (exwm-enable) を使ってください ((require 'exwm-config) は不要です)。

サーバーモードで emacs を起動してコマンドラインから EXWM を起動することもできます。https://github.com/ch11ng/exwm/issues/284 を参照してください。

設定

EXWM は完全な X ウィンドウマネージャであるため、Emacs はブラウザや vlc などと同じように X ウィンドウを管理します。通常の Emacs のウィンドウコマンドを使ってウィンドウの配置を制御できます。X ウィンドウの中では (つまり通常の Emacs バッファ以外)、一部のコマンドは EXWM によってキャッチされプログラムに渡されません。そのようなキーは exwm-input-prefix-keys に保存されています。また、exwm-input-set-key 関数を使うことでグローバルなコマンドを設定できます。例えば、キーボードショートカットとして s-& を使ってプログラム (例: firefox) を起動したい場合:

(exwm-input-set-key (kbd "s-&")
                    (lambda (command)
                      (interactive (list (read-shell-command "$ ")))
                      (start-process-shell-command command nil command)))

マルチモニター

EXWM はオプションの exwm-randr パッケージによってマルチモニターを管理することができます。xrandr をインストールして emacs の設定ファイルで exwm-randr を有効にすることで (exwm-enable) を呼び出すことができるようになります。"DP-1" と "DP-2" の値はあなたが使用しているコンピュータにあわせて調整してください。引数を付けずにコマンドラインで xrandr を実行すると利用可能な出力が確認できます。

(require 'exwm-randr)
(setq exwm-randr-workspace-output-plist '(1 "DP-1"))
(add-hook 'exwm-randr-screen-change-hook
          (lambda ()
            (start-process-shell-command
             "xrandr" nil "xrandr --output DP-1 --right-of DP-2 --auto")))
(exwm-randr-enable)

システムトレイ

EXWM はシステムトレイに対応していますが、デフォルトでは有効になっていません。有効化するには emacs の設定ファイルの (exwm-enable) の前に以下を記述してください:

(require 'exwm-systemtray)
(exwm-systemtray-enable)

高さは exwm-systemtray-height 変数で調整できます。

コンポジットマネージャ

ノート: コンポジットマネージャは問題を起こすことがあります。EXWM の動作が遅くなる場合、コンポジットマネージャをオフにしてみてください。

EXWM にはコンポジットマネージャが付属していますが、デフォルトでは有効になっていません。以下をロードすることで有効化できます:

(require 'exwm-cm)
(exwm-cm-enable)

また、(exwm-cm-enable) を排除して代わりに exwm-cm-start または exwm-cm-stop を呼び出すことで手動でコンポジットマネージャを起動・停止できます。

トラブルシューティング

Firefox で画面がちらつく

Preferences > Advanced > Use Smooth Scrolling からスムーズスクロールをオフにしてみてください。

参照