我想更改所有内置byobu插件/指示灯的颜色,以匹配我的tmux / vim / emacs / terminal的曝光调色板。
有没有一种简单的方法可以在用户的rc文件中覆盖它们,还是我必须在/ usr / lib / byobu / *中更改它们?
答案 0 :(得分:8)
事实上,这是可能的。
您需要获取color_map()
函数的定义,该函数在/usr/lib/byobu/include/shutil
中定义。
复制整个函数并将其粘贴到本地用户的~/.byobu/color.tmux
配置文件中。该功能目前看起来像这样:
color_map() {
case "$1" in
"k") _RET="black" ;;
"r") _RET="red" ;;
"g") _RET="green" ;;
"y") _RET="yellow" ;;
"b") _RET="blue" ;;
"m") _RET="magenta" ;;
"c") _RET="cyan" ;;
"w") _RET="white" ;;
"d") _RET="black" ;;
"K") _RET="brightblack" ;;
"R") _RET="brightred" ;;
"G") _RET="brightgreen" ;;
"Y") _RET="brightyellow" ;;
"B") _RET="brightblue" ;;
"M") _RET="brightmagenta" ;;
"C") _RET="brightcyan" ;;
"W") _RET="brightwhite" ;;
*) _RET= ;;
esac
}
现在,您可以根据需要更改这些颜色。例如,如果将“Y”定义从“brightyellow”更改为“magenta”,您应该会看到系统负载指示器从黄色变为紫色。
如果你使用曝光,你可能想要使用Tmux的256色支持。在这种情况下,您可能希望指定256色选择而不是16色选择,例如“color52”您可以使用此xterm颜色图表作为指南:
如果您确实创建了一个曝光的主题,请分享它,因为我很乐意将其作为一个选项包含在[Byobu][2]
中!
完全披露:我是Byobu的作者和维护者。