本記事は以前はてなブログに投稿していた記事の内容を加筆修正して移行したものです。
きっかけ
筆者はこれまでGNU/Linuxのディスクトップ環境としてXfce4を使用してきて、特にこだわりを持っていなかったためXfce4標準のXfce terminalを使用してきました。
Xfce terminalは動作が軽快で、背景透過機能、タブ機能があり Alt + 数字keyでタブ移動ができたりと機能的には特に不満はありませんでした。
しかし、最近Qiita,Zenn等で"WezTermなるターミナルエミュレーターがいいぞ!“という記事を多く見まして気になったので試してみることにしました。
設定ファイルをLuaで書くことができて高機能でカスタマイズ性が高く、Rustで実装されています!
インストール
Arch Linuxでは、普通にpacmanでインストールできます。
|
|
以前にインストールしたときはAURの方の末尾がgitのパッケージしか存在せず、インストール時にソースからビルドに時間するため時間を要していましたが、
今回はArch Linxのリポジトリからビルド済みのバイナリのインストールが可能でした。
設定
設定は$HOME/.wezterm.luaに記述するのですが、設定ファイルをGitで管理したいのでローカルリポジトリ内に.wezterm.luaを置き、
HOMEに対してシンボリックリンクを作ることにしました。
まずはじめに
まずはLuaからWezTermのAPIにアクセスしなければならないので以下を先頭に記述します。
.wezterm.lua
|
|
設定は空のテーブルconfigを作成してから、
|
|
で設定していきます。
最後に設定を格納したテーブルであるconfigをWezTerm側にから読めるようにするために末尾の行に
|
|
としてconfigをreturnしてあげます。
背景色&背景透過
Xfce terminalでは先に述べたように背景透過、タブ移動のショートカットkeyを使っていたので今回は、これを設定をしました。
まずテーブルcolorを設定して色の設定をします。
|
|
背景透過の設定では、透過率は、config.window_background_opacityで設定します。
|
|
自分の好みの見た目は0.79です。
タブ移動のキーバインド
次にタブ移動のキーバインドを設定します。
公式にタブ移動のkey設定の例があったのでこれを参考にしてAlt + 数字keyで移動できるように設定しました。
|
|
カスタムキーを設定するにはまずconfigにテーブルkeyを格納します。
このkeyに各keyの設定を以下の書式のテーブルを格納します。
|
|
各フィールドの意味は以下の通りです。
- key: 押すキーの名前を指定する文字列型の値
- mods: SuperKey(Windowsで言うところのwindows key)やAlt keyを指定する文字列型の値
- action: 一番目、二番目で指定したキーが押された時に動作する関数を指定します
二番のフィールドmodsで2つのキーを組み合わせたい場合(例:Shift + Ctrl)では2つの文字列を’SHIFT|CTRL’のように’|‘で区切って書きます。
デスクトップ環境との相性について
x11 + xfce4のデスクトップマシンでは、すぐには、インライン入力ができなかったのでFcitx5: リアルタイム入力(インライン入力)のための設定を参考にしてfcitx5の設定を行ったら問題なくインライン入力ができるようになりました。
一方、swayを使っているサブのASUSのラップトップでは日本語のインライン入力はできるが、IMEの候補がポップアップで表示されませんできました。 (追記@ 2025 12/29 現在では特に問題なくFcitx5による日本語入力ができています)。
実際に使ってみて
X11 + xfce4環境、Sway(Wayland)環境は両方とも日本語入力に多少の難があったので、すぐにWezTermには移行せず、まだ両方とも使うということになりそうです。
また、WezTermからneovimで開いてコードを編集しているときにCtrl + '+'でコードのインデントを整理しようとすると画面が拡大してしまう問題も解決できていません。
(追記@ 2025 12/29 現在ではコードフォーマットは mhartington/formatter.nvimで各プログラミング言語ごとに設定して:wでフォーマットされるように設定しているので特に問題ないです)