weztermとの出会い

新しいターミナルを探していました

お久しぶりです。

最近、趣味で使用しているターミナル環境に不満を持ち、weztermに変更することにしました。

理由は簡単で、もっと色々設定できてしかも簡単で早くていろんな環境で動くやつを使いたいと改めて思ったためです。

これまではUbuntuMacで開発する上でgnome-terminalterminologyiTerm2を使ってきていました。

ターミナル上で直接画像表示して画像ファイルをさっと見たい用途からterminologyやiTerm2を使っていたのですが、ここに来て不満が爆発しました。

そんな折に出会ったのがweztermです。

wezfurlong.org

最も気に入った点

設定がluaで書けてスッキリすることや設定できる範囲が広いことも利点としてあるのですが、私を惹きつけたのは手厚いドキュメントでした。

普段ドキュメントがしっかりしているかでAPIを選んだりしているのに趣味の開発ではREADME.mdすらロクに書かないのは何故なのだろう。七不思議の一つです。

その点、weztermの作者はドキュメントをしっかり書いていて凄いと思いました。

とにかく分からないことがあっても公式ページを見れば分かるのが有り難いですね。

まだ使いはじめて間もない

結構良さそうだみたいな記事を書いていますが実はまだ使いはじめて間もない(今日)ので、もしかしたら不満に思う部分が今後でてくるかもしれません。

たとえばweztermを起動した状態でsuspendして復帰した後にwezterm上でibus(Mozc)が復帰してこなくて使えなくなるとか。

これについては現状suspend明けに以下を実行するように設定して解決しています。

ibus-daemon -drx

もっとスマートな方法を見つけたら変えていきたいです。

ちなみに現状の設定状況はこんな感じです。

.wezterm.lua

local wezterm = require 'wezterm'

local config = {}

if wezterm.config_builder then
  config = wezterm.config_builder()
end

-- フォント設定
config.font = wezterm.font("Ubuntu Mono", {weight="Medium", stretch="Normal", style="Normal"})
-- ウィンドウタイトルや枠の表示設定 (タイトルは表示しない)
config.window_decorations = "RESIZE"
-- タブが一つしかないときは表示しない
config.hide_tab_bar_if_only_one_tab = true
-- 背景画像がないときの透過率
config.window_background_opacity = 0.8

-- 背景画像の明るさ
local dimmer = { brightness = 0.3 }
config.background = {
  {
    source = {
      File = '画像ファイルへの相対パスまたは絶対パス(~は効かない)',
    },
    -- 背景画像が小さくて折り返すときはミラーリングする
    repeat_x = 'Mirror',
    -- 明るさの適用
    hsb = dimmer,
    -- ビューポートスクロール時の移動量(10%)
    attachment = { Parallax = 0.1 },
    -- 背景画像の透過率
    opacity = 0.90,
  }
}

return config

こういう設定ファイルを育てていくのってテンション上がりますよね。

たまごっちみたいな感じがします。しますよね?

おもったこと

こういうのあるよって話し合える仲間がほしいと思った今日この頃なのでした。