如何在 tmux 中撤消重新绑定?

如何在 tmux 中撤消重新绑定?

换句话说,如何恢复默认行为?

我使用了这个配置(来自书tmux - 高效的无鼠标开发):

# Maximize and restore a pane
unbind Up
bind Up new-window -d -n tmp \; swap-pane -s tmp.1 \; select-window -t tmp
unbind Down
bind Down last-window \; swap-pane -s tmp.1 \; kill-window -t tmp

正如评论所说,您将 PREFIX+Up 键绑定到“最大化”操作,将 PREFIX+Down 键绑定到“恢复”操作。这真的很酷,我喜欢它,但尝试了一段时间后,我想回到使用 Up 和 Down 来移动窗格。

仅从 .tmux.conf 文件中删除这些行并重新加载并不能使 PREFIX+Up 和 PREFIX+Down 恢复其默认行为。我如何才能让 PREFIX+Up 和 PREFIX+Down 再次在窗格之间移动?

答案1

除了明确地执行此操作之外,没有其他直接的方法可以将绑定恢复为其默认值。

这些是默认绑定:

bind-key -r      Up select-pane -U
bind-key -r    Down select-pane -D

将它们粘贴到某个文件(例如/tmp/default-up-down)中,然后将其导入到您的服务器中。您可以通过从新的、临时的服务器中提取绑定来稍微自动化一下:

# extract some default bindings from a fresh server
tmux -f /dev/null -L temp start-server\; list-keys | grep -E ' (Up|Down)' >/tmp/default-up-down

# make sure you got the bindings you wanted
cat /tmp/default-up-down

# apply the bindings to your normal server
tmux source /tmp/default-up-down

注意: 的输出list-keys通常是直接可用的,但如果你的绑定涉及复杂的引用,或者你绑定了特殊键;(通常充当tmux命令分隔符,因此需要使用反斜杠转义)。不过,Up 和 Down 的默认绑定不应该造成任何此类问题。

相关内容