tmux:变量指示是否选择文本



我在tmux的复制模式中使用vi keybindings,我想制作 esc 如果有一个或退出复制模式,请清除当前选择如果什么也没有选择。

bind -T copy-mode-vi Escape if-shell -F '#{selection_active_flag}' 
                                        'send-keys -X clear-selection' 
                                        'send-keys -X cancel'

我希望tmux可以公开一个指示选择状态的变量(我编造了selection_active_flag以表达我的意图,实际上并不存在),类似于window_zoomed_flag(确实存在)。

有没有办法实现这一目标?

tmux 2.6引入了selection_present。如Changelog中所述,

  • 在复制模式下添加selection_present格式(允许执行的键绑定 如果有选择,则有所不同)。

这正是我要寻找的,尽管我正在运行Tmux 2.6,但似乎我有一个过时的人页面,因为它没有提及selection_present

最终的工作解决方案是:

bind -T copy-mode-vi Escape if-shell -F '#{selection_present}' 
                                        'send-keys -X clear-selection' 
                                        'send-keys -X cancel'

最新更新