tmux 状态栏消息仅持续约一秒钟:我可以延长它吗?

tmux 状态栏消息仅持续约一秒钟:我可以延长它吗?

我多次在手册页中搜索如何设置状态栏消息(display-message "hello world"在 tmux 命令提示符下输入时看到的内容)的显示时间长度,但似乎一无所获。有谁知道有什么方法可以让它们显示足够长的时间以供阅读。输入带有语法错误的命令后收到的错误消息特别烦人。我必须重复该命令 3 次或更多次才能知道它说了什么。

有人知道如何解决这个问题吗?(最好不要更改源代码并重新编译;)

答案1

听起来您想更改display-time会话选项。初始默认值为 750 毫秒。

如果您想要设置一个新的默认值,那么请更改“全局”值(例如在您的.tmux.conf):

set-option -g display-time 4000

全局值对于任何尚未建立自身值的会话均有效(见下文)。

如果您只想更改单个会话(例如,通过 Prefix-:命令行仅更改当前会话):

set-option display-time 4000

当然(像任何其他tmux命令),您还可以从 shell 命令行进行更改:

tmux set-option -g display-time 4000
tmux set-option -t 4 display-time 10000  # set a value just for session "4"

答案2

还有默认show-messages绑定的命令。~

答案3

另一个选项是使用display-message -p。 的行为-p是 tmux 临时打开一个空的专用窗口来显示消息。 很棒的是窗口会自动处于 tmux 的复制模式。 消息(和窗口)仅在您按下某个键时才会消失。

这比常规的更具侵入性display-message,但绝对能吸引用户的注意力。更像是 GUI 术语中的模态对话框。

     display-message [-aIpv] [-c target-client] [-t target-pane] [message]
                   (alias: display)
             Display a message.  If -p is given, the output is printed to stdout, otherwise it is displayed in the target-client status line.  The format of message is described in the FORMATS section; information is taken from target-pane if -t is given, otherwise the
             active pane.

             -v prints verbose logging as the format is parsed and -a lists the format variables and their values.

             -I forwards any input read from stdin to the empty pane given by target-pane.

相关内容