我最近开始使用tmux并非常喜欢它,但是其绿色底栏有点让人分心,有没有办法改变其颜色?还是隐藏它的方法?

#1 楼

手册中提供了许多选项。 (请参阅“选项”部分。)
创建RC文件:~/.tmux.conf。下面的内容启用UTF-8,设置正确的TERM类型,并绘制带有黑色背景和白色前景的状态栏。

set status-utf8 on
set utf8 on

set -g default-terminal "screen-256color"

set -g status-bg black
set -g status-fg white


在FreeBSD 10.1中,我有必须在UTF指令中添加-g

set -g status-utf8 on
set -g utf8 on


在UTF-8上,许多SSH客户端需要一个显式定义要使用的字符集。例如,在腻子中,选择Window -> Translation -> Remote character set: UTF-8,然后选择Use Unicode line drawing code points

,然后关闭状态栏...

set -g status off


从手册...


消息背景颜色

设置状态行消息背景颜色,其中颜色是以下之一:
黑色,红色,绿色,黄色,蓝色,洋红色,青色,白色,颜色0至256色调色板中的255,或默认设置。


因此,要列出可用的颜色,首先创建一个脚本,也许是colors.sh

#!/usr/bin/env bash
for i in {0..255} ; do
    printf "\x1b[38;5;${i}mcolour${i}\n"
done


接下来,执行脚本,将其传递给less

colors.sh | less -r


这将生成以下格式的颜色列表1-255:在~/.tmux.conf中,使用此值设置所需的颜色:

colour1
[...]
colour255
在Fedora 17中,默认情况下不启用256色端子。 Fedora项目Wiki中提供了用于默认启用256色终端的官方方法。遵循该指南,或者作为一个针对每个用户的解决方案,为tmux创建一个别名,以通过“ -2”开关强制支持256色。启动tmux进行测试。

请注意,正如@ ILMostro_7指出的那样,从例如tmux设置~/.bashrc的TERM类型是不正确的。每个tmux窗格模拟一个终端-与xterm不同。 tmux中的仿真需要匹配屏幕,不同的端子描述,才能正常运行;但是,真正的终端不需要这样做。它的描述是xterm-256color

评论


这对于Ubuntu来说效果很好,但是当我将Fg color设置为Gray时,它显示“坏色”时,我使用Fedora 17。

–山姆
2013年1月11日在22:02

我使用Fedora Wiki上的官方方法,每次尝试登录时,都会返回以下错误消息:-bash:$'\ r':找不到命令-bash:$'\ r':找不到命令-bash:$' \ r':找不到命令-bash:/etc/profile.d/256colors.sh:第13行:意外令牌$'in \ r''bash附近的语法错误:/etc/profile.d/256colors.sh:第13行:。中的大小写“ $ TERM”。我还使用了其他两种方法,我运行时没有错误,但未执行任何操作!

–山姆
2013年1月12日9:04



要将bg-color设置为透明:将-g status-bg设置为default

–海德先生
13年13月13日在11:42

这是颜色图:github.com/guns/xterm-color-table.vim/blob/master/…例如:color260是橙色。在Tmux中,按Control-b,然后按:set -g status-bg colour260。 (Tmux使用国际“颜色”与美国“颜色”。)还请注意,Tmux具有历史记录,可以先按Control-b更新颜色,然后:进入命令模式,然后按向上箭头编辑最后设置的颜色命令。

– johntellsall
16-2-9在19:04



对于TERM环境变量,使用xterm-256color而不是screen-256color可能是更好的解决方案。

– ILMostro_7
16年4月4日在7:34

#2 楼

对我来说是C-b:set status-style "bg=red"

评论


此解决方案在OS 10.10.5的Mac上对我有效

– Reina Abolofia
16-3-21在16:22

@ReinaAbolofia太好了! = D

–同构
16年4月19日在15:09