You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为tmux绑定快捷键实现窗口左右移动?解决swap-window格式支持问题

tmux窗口移动快捷键配置问题

目标: 在tmux中绑定Ctrl+Shift+PgUp[PgDn]快捷键,使当前窗口索引增加[减少]1,实现类似浏览器标签页的移动效果,本以为是简单问题,可能自己复杂化了。

问题: swap-window命令没有-F标志选项,因此无法识别tmux格式(表达式)

已尝试的操作

user@host ~> # 当前窗口索引为1
user@host ~> tmux display -p '#I'
1
user@host ~> tmux set -F @next_window '#{e|+|:#I,1}'
user@host ~> tmux display -p '#{@next_window}'
2

尝试使用的tmux特性

  • 手册页格式规则:

    某些命令接受带格式参数的-F标志。这是一个控制命令输出格式的字符串。格式变量包含在‘#{’和‘}’中,例如‘#{session_name}’。可用变量如下表所示,也可以使用tmux选项的名称来获取选项的值。一些变量有更短的别名,例如‘#S’;‘##’会替换为单个‘#’,‘#,’替换为‘,’,‘#}’替换为‘}’。

  • 表达式计算功能:例如,要在格式中计算10减5,可使用#{e|-|:10,5}

逻辑上的配置尝试

# 重新排序窗口
set -f @next_window '#{e|+|:#I,1}'
set -f @previous_window '#{e|-|:#I,1}'
bind C-S-PgUp swap-window -d -t '#{@next_window}'
bind C-S-PgDn swap-window -d -t '#{@previous_window}' 

但如前所述,swap-window没有-F标志选项,因此执行swap-window -d -t '#{e|-|:#I,1}'会提示can't find session: #{e|-|,执行swap-window -d -t '#{@foo}'会提示can't find session: #{@foo}


内容的提问来源于stack exchange,提问作者netcat_dd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 06:07:39