新入社員の群れを見るたび、春を感じますね?(ほんとか?

最近色々あって、がらっと環境を変えてお試ししているところなので、それらについて書こうかと思います。

行き着くまでの変遷

Alacritty + tmuxで長い間生活していました。ただ、せっかくAlacrittyで高速なのに、tmuxで結構わかるレベルで遅いなぁ、とも思っていました。

そこで、Kittyを試してみました。

https://sw.kovidgoyal.net/kitty/

kittyはこれです。特徴としては、

これはこれで悪くなかったんですが、最近使うようになって気に入った https://github.com/yuru7/moralerspace が使えないことと、設定ファイルがあまり機能的ではないことが気にかかりました。

で、次に https://github.com/wez/wezterm weztermを試してみました。

導入してみて結構良かったんですが、 Waylandとの相性がよくない という問題がありました。気づいたら落ちててアレ?って何回かなりました。

また、tab/paneが組み込みであるとはいえ、そのキーバインドを覚えるコストと、安定性という話を天秤にかけたところ、最終的にAlacrittyに戻ってきました。

ZellijとNushell

tmuxはもう長いとこお世話になっていましたが、なんか変えるんなら一気に変えようと思い、Zellijを導入してみることにしました。

https://zellij.dev/

Rust製で、tmuxやscreenとおなじようなterminal multiplexerです。結構特徴的なUIがbattery includedされており、いろいろな機能が提供されています。もうtmuxとは別物ですね。

ここまで来たんならいっそ行くところまでいったれ、ということで、以前見かけて気になっていたNushellも導入することにしました。もともとはfishでした。

https://www.nushell.sh/

Alacritty + Zellij + Nushellということで、Rust3兄弟が完成したことになります。

Zellijの気になるとこ

Alacritty自体はシンプルさと基本機能に全振りしているという状態なので、zellijが色々拡張をする感じになるんですが、使っていると結構気になる部分はあります。

とはいえ動作はキビキビしていて、使っていて楽しさはあります。

Nushellの気になるとこ

fishが気が効きすぎていた、というだけの気分ですが。

ghqの例だと、こんな感じで書く必要がありました。

export def --env ghq [] {
  ^ghq list --full-path | fzf --layout=reverse --height=40% | decode utf-8 | str trim | cd $in
}

--env がポイントです。後、 ^ という記号がありますが、先頭にこれがないと組み込みを探そうとしてしまってエラーになります。

redirectとかも互換性がないんですが、ここまで互換性がないといっそ清々しいので、もうちょっとカスタマイズしてみようかと思います。

春なので

いつものdotfilesに追加していってます。

zellij: https://github.com/derui/dotfiles/blob/master/zellij/config.kdl nushell: https://github.com/derui/dotfiles/blob/master/nushell

同じものをつかい続ける、というのも生産性という意味では正解だと思いますが、たまにはガッツリ環境を変えてみるのも、日ごろ味わえないストレスが味わえて、いいもの(?)だったりします。

今回使っているものは、Linux/macOSで使えますので、興味が湧いた方はさわってみちゃーどうでしょう。タノシイですよ?

小ネタも書いていきたい

ネタ自体は、またキーボード変えたとかいくつかあるんですが、目下大きめのネタが進行中で、そっちに集中している全然書けない、というジレンマ状態です。もうちょっとしたらかけるようになると思うので、それまでも小ネタを書いていけるようになりたいところです。