当用户改变窗口时是否可以执行屏幕命令?
我使用 zsh 的 precmd() 功能在命令运行时将屏幕的工作目录更改为 zsh 的工作目录,从而将当前工作目录保存在 hardstatus 中。但由于 zsh 在窗口更改时不会运行命令,因此 hardstatus 中的工作目录不会更新为新窗口中的 zsh 实例(显然如此)。
我的想法是,如果我可以让 screen 在窗口改变时执行 :chdir,我就可以让 zsh 将其工作目录存储在某个地方或类似的地方,并让 screen 读取它并在窗口改变时更改为该目录。(可能有一个更有效的解决方案,这只是我突然想到的。)
答案1
我想要我的硬状态中包含的 shell 的工作目录。
可能的解决方案:重写precmd()
以设置 Xterm 标题,使用printf "\e]0;%s\007" "$PWD"
。 (我喜欢${PWD/#$HOME/~}
。)
当在里面使用时screen
,这实际上会更新硬状态文本。