在使用 Tmux 时,我尝试使用 最大化当前窗格<prefix> z,但遇到了一点键盘故障,并且在按 z 时意外地按住了前缀键,而不是放开前缀组合。然后终端完全清除(最大化,清除所有窗格),虽然我能够在其中输入内容,但我无法逃脱或使用任何快捷键来摆脱这种情况。
有谁知道这个模式是什么以及如何退出它?要重新创建,请按住前缀键并按“z”(同时仍按住前缀键)。
我希望根据我是否在 tmux 会话中来决定 zsh 提示符的颜色。在bash中,可以通过检查$TMUX的值来完成,但我在zsh中找不到等效的方法。在zsh中可以吗?
我正在尝试以 vim 友好的方式使用 tmux(在 xterm 中)。这是我现在的 .tmux.conf。
bind-key -n M-Down select-pane -D
bind-key -n M-Up select-pane -U
bind-key -n M-Left select-pane -L
bind-key -n M-Right select-pane -R
bind-key -n M-j select-pane -D
bind-key -n M-k select-pane -U
bind-key -n M-l select-pane -L
bind-key -n M-h select-pane -R
bind-key -n S-M-Right next-window
bind-key -n S-M-Left previous-window
bind-key -n S-M-Up split-window -h -c "#{pane_current_path}"
bind-key -n S-M-Down split-window -v -c "#{pane_current_path}"
// these do not work
bind-key -n S-M-l next-window
bind-key -n …Run Code Online (Sandbox Code Playgroud) 如果我输入man tmux,/join-pane我会直接转到我正在寻找的子命令:
但如果我 grep 手册页,那么我什么也得不到:
$ man tmux | grep join-pane
$ echo $?
1
Run Code Online (Sandbox Code Playgroud)
如果我尝试一些不同的东西,那么它确实有效:
$ man tmux | grep 'terminal multiplexer'
tmux -- terminal multiplexer
tmux is a terminal multiplexer: it enables a number of terminals to be
Run Code Online (Sandbox Code Playgroud)
有关我的操作系统和我正在使用的命令的一些详细信息:
$ uname -a
Darwin home.local 17.7.0 Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64 x86_64
$ grep --version
grep (BSD grep) 2.5.1-FreeBSD
$ man --version
man, …Run Code Online (Sandbox Code Playgroud) 我本来要写命令tmux detach,但我不小心按下了其他一些键/组合键,并在整个终端上看到了一个大时钟。只打印了时间,没有其他任何内容。
我不知道它的出现是因为我不知情地安装了一个软件包,还是因为一个原生的 Linux/centos 软件包。
我可以说我发现的最相关的事情是这个答案中出现的图像。
文本字体与上述图像中的字体非常相似。
我xterm-keys在 tmux 中启用了正常的 xterm 键绑定,例如使用Ctrl 箭头键进行全字移动。
但是,通过启用xterm-keys它会导致Shift-Enter在vim. 特别是,Shift-Enter在正常模式下按下可切换从光标位置开始的 13 个字母的大写,而与单词边界无关。在命令模式下按这些键会退出该模式,然后切换 13 个字母的大写。通常在 中vim,此按键的结果是向下移动一行(正常模式)或执行任何输入的命令(命令模式),据我所知,这些是默认行为。
我转载空这个效果.tmux.conf和.vimrc文件,所以它不是其他配置设置的副作用。
我是 tmux 新手,我想知道如何通过 pane_id 测试窗格是否关闭。
我现在正在使用以下脚本来完成这项工作:
tmux display-message -p -t %21 >/dev/null && echo 123
Run Code Online (Sandbox Code Playgroud)
它有效,但我不确定这是正确的方法。
我正在自定义我的.tmux.conf并在其他人的自定义中找到了许多其他示例。
这是一个显然使 tmux 窗格拆分更多 vim 的示例,例如:
set-option -g prefix C-w
unbind-key C-w
bind-key C-w send-prefix
set -g base-index 1
bind-key v split-window -h
bind-key s split-window -v
bind-key h select-pane -L
bind-key j select-pane -D
bind-key k select-pane -U
bind-key l select-pane -R
Run Code Online (Sandbox Code Playgroud)
bind key, setand的语法是什么意思set-option?