🗂

tmuxでcolorschemeを適用させるのに、しこたま手こずった話。

2022/08/18に公開

概要

tmuxでcolorschemeを適用させるには、TrueColorで表示できている必要がありますが、なかなか問題が特定できず(解決はしましたが、原因は特定できていません。)。インターネット上の諸先輩方のサンプルを元になんとか解決できたのでそのメモです。

こちらの記事を大変参考にさせていただきました。この記事は、こちらの記事を元に、順番に解決していった記録です。
https://www.pandanoir.info/entry/2019/11/02/202146

勘所

TrueColorで表示できるか、これに尽きます。良い例となれば成功です。

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

良い例

悪い例

自分の環境

terminal:tym
terminal+:tmux
shell:fish
editor:neovim

https://github.com/endaaman/tym
https://github.com/tmux/tmux
https://github.com/fish-shell/fish-shell
https://neovim.io/

結局どのような設定となったか

tym

デフォルトの設定でTrueColorが表示できるので、特に設定はしていません。

tmux

~/.tmux.conf
set-option -g default-terminal "tmux-256color"
set-option -ga terminal-overrides ",xterm-256color:RGB"

こちらの設定については、他ターミナルで似たような構成のものも参考にさせていただきました。
https://gist.github.com/andersevenrud/015e61af2fd264371032763d4ed965b6


https://noknow.info/it/os/install_ncurses_from_source?lang=ja
https://akahana-1.hatenablog.jp/entry/2017/11/07/153741

fish

デフォルトの設定でTrueColorが表示できるので、特に設定はしていません。

neovim

~/.config/nvim/init/vim
set termguicolors
colorscheme everblush
let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum" " 文字色
let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum" " 背景色

まとめ

環境構築には思いの外手間取りましたが、理想の開発環境が構築できて満足です。

Discussion