终端窗口的默认位置

参考:
https://unix.stackexchange.com/questions/48984/how-can-i-set-the-position-that-terminal-opens-at

我用的桌面是Xfce,设定了终端窗口打开方式:

xfce4-terminal --geometry=80x25+220+150

这样就会使终端窗口每次弹出时都固定在x=200, y=150坐标上。但这样还产生了一个新的问题,如何让再出现的窗口在坐标上有一些增量呢,比如x=240, y=160

这个的关键词是 “Cascade”
您使用的是否为 openbox 窗口管理器?在 openbox 的 wiki 中,没有发现有关内容。

不指定初始位置时,再出现的窗口在坐标上有没有增量呢?

不指定初始位置时,第一个窗口会在左上角出现,后续窗口会在窗面其它角落出现:依次为右上、右下、左下。

我用的桌面管理系统是ligtdm,窗口管理器是xfwm4。

这个属于窗口管理器提供的高级功能。在 openbox 和 xfwm4 的源代码中搜索 ‘cascade’,没找到相关内容。我用的另一款窗口管理器 fvwm2 支持 CascadePlacement 和 TileCascadePlacement,但 fvwm2 使用比较繁琐,且与现代桌面环境的配合不是很好

厉害了,还能在源代码中找功能。vickycq是神一样的存在。没有cascade功能,xfwm4的窗口不够酷。

我想再问一个问题:

最近发现终端窗口弹出时,显示符有些滞后,光标总是停滞一点时间后才显示提示符,然后title bar上才显示出计算机名和家目录信息。初始显示信息为Terminal

是不是在后面做了点什么,耽误了一段时间。如何查找出耽误时间的原因呢?

只是用 apt source xfwm4apt source openbox 下载源代码,然后搜索字符串 grep -Ri 'cascade' ./
因为在谷歌搜索 ‘openbox cascade placement’ 得到这样一个网页
http://icculus.org/openbox/2/features.php
其中提到支持包括 Cascade 在内的四种模式。但根据 openbox wiki,只支持两种模式。所以怀疑源代码中实现了该功能,但没有文档说明。于是在源代码中搜索 ‘cascade’,没发现对应字样。看来可能是以前 (版本2.x) 有,现在 (3.x) 删去了。

您的观察非常仔细。看来您是在 xfce4-terminal 的设置界面中将 Initial Title 设置为 ‘Terminal’,当 .profile 和 .bashrc 执行到设置动态标题的语句时,才会显示为计算机名和家目录信息。您可以在家目录执行 source .bashrc 看看是否一样缓慢。您也可以使用一些笨办法查出原因,如在 .bashrc 中的适当位置添加一系列 echo 命令打印字符串,这样可以肉眼看出哪一段比较慢。如果您无法查出原因,您也可以将 .bashrc 贴上来看看。

还是请您费心看看吧:

.bashrc: http://paste.debian.net/982709/
.profile: http://paste.debian.net/982710/

找到原因了,受你的提示,我还查看到了一下.zshrc(我安装了zsh),发现不知什么时候在文件末尾加了如下内容:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

把这些内容删除后弹出终端窗口时就恢复如常了。

1 个赞

这些不是nvm的配置嘛!

是的,应该安装软件时自动写入的。