每当我启动屏幕时,它会将终端窗口的标题更改为“屏幕”。如果我没有在屏幕下运行我的命令,我可以防止这种情况并让窗口标题保持原样吗?
更具体地说,我希望 gnome-terminal 显示我在 vim 中编辑的缓冲区的名称。我可以通过添加set title
到我的 .vimrc 来做到这一点。现在,当我运行 vim 时,缓冲区名称(以及一些其他信息)显示在 gnome-terminal 的标题中。当我启动屏幕并运行 vim 时,标题变为“屏幕”。
我查看了以下页面:
http://beautifulpixels.blogspot.co.at/2012/01/automatic-screen-window-titles-in-bash.html
但是建议的解决方案将窗口标题放在屏幕状态行中。我也尝试添加这个:
case $TERM in
screen*)
# http://dtfm.tumblr.com/post/7193076007/the-sweetest-screenrc-hack-ever
SCREENTITLE='\[\ek\e\\\]\[\ek\W\e\\\]'
;;
*)
SCREENTITLE=''
;;
esac
TITLEBAR='\[\e]0;\a\]'
export PS1="${SCREENTITLE}${TITLEBAR}[\u@\h \W]\$ "
到我的 .bashrc,但这只会将窗口标题设置为当前目录。即使我运行 vim,窗口标题仍然是当前工作目录。如果我在屏幕之外运行它,情况并非如此。
有任何想法吗?