我有这个设置,它应该通过按将当前窗口重命名为我的当前目录<prefix>.
bind-key . run -b "tmux rename-window $(basename #{pane_current_path})"
由于某种原因,它不起作用。目前它给了我一个 127 错误。我尝试用 替换,basename
但/usr/bin/basename
也没有帮助。我不知道我现在做错了什么……
答案1
编辑:我原来的答案是错误的,只是侥幸而已。Kamil 在下面的评论促使我重新考虑。
以下命令对我有用,包括带有空格的路径。
bind-key . run -b 'tmux rename-window "`basename \"#{pane_current_path}\"`"'
或者
bind-key . run -b 'NEWNAME="#{pane_current_path}"; tmux rename-window "${NEWNAME####*/}"'
答案2
当您执行更新时,您可能会通过确认步骤来保护操作:
bind . run 'tmux confirm-before -p "rename-window #{b:pane_current_path}? (y/n)" "rename-window #{b:pane_current_path}"'
或者
bind . command-prompt -I "#W" "rename-window '%%'"
后者的额外好处是它允许进一步修改。