Closed9

Alacritty + tmux にTrue Color対応する

shinoyushinoyu

モチベーション

カラーテーマ適用して見やすいターミナルにしておきたい。TrueColor対応で24bitの色が使えるようになるので、カラーテーマが本来狙っている画面の見やすさを再現できる。

shinoyushinoyu

まず今の環境がTrueColorに対応しているかチェックする

簡単なスクリプトがある
https://gist.github.com/lifepillar/09a44b8cf0f9397465614e622979107f

$ curl -s https://gist.githubusercontent.com/lifepillar/09a44b8cf0f9397465614e622979107f/raw/24-bit-color.sh | bash

実行するとこんなかんじ。色のつなぎ目があるとTrueColor非対応です。ガッタガタですね。

shinoyushinoyu

1. TmuxでTrueColorを扱えるようにする

まず、自分の端末の、/usr/share/terminfo/74あたりに tmux-256colorが存在するかチェックする。Macなら多分入ってないので、下記手順を実行する。

brew install ncurses
/usr/local/opt/ncurses/bin/infocmp tmux-256color > ~/tmux-256color.info
tic -xe tmux-256color ~/tmux-256color.info

ちゃんと反映されたかチェックする場合はinfocmp tmux-256color | head を実行して下記の表示が出力されていることをチェック。

Reconstructed via infocmp from file: /Users/shinoyu/.terminfo/74/tmux-256color
tmux-256color|tmux with 256 colors,

https://github.com/tmux/tmux/issues/1257#issuecomment-581378716

ubuntuなどLinuxを使っている場合なら、下記のようにncurses-tmuxを設定する
https://akahana-1.hatenablog.jp/entry/2017/11/07/153741


tmux-256colorの導入ができたら、tmux.confを変更

set -g default-terminal "tmux-256color"
set -ag terminal-overrides ",xterm-256color:RGB"
shinoyushinoyu

この設定だとtigのカラー指定が全く動かなくなってしまったので、下記がベストだと思われます。

tmux.conf

set -g default-terminal "screen-256color"
set -ag terminal-overrides ",alacritty:RGB"

alacrrity.yml

env:
  TERM: alacritty
このスクラップは2023/04/26にクローズされました