如何在任意方向(非垂直和非水平)调整应用程序窗口的大小

如何在任意方向(非垂直和非水平)调整应用程序窗口的大小

对我来说,使用 Linux 时最烦人的事情之一是调整打开的窗口(例如终端窗口)的大小。

我想调整终端窗口的大小(使其更大或更小)。但是,当我将鼠标放在右下角以抓住角点时,需要反复试验才能使鼠标变为一定角度,因此我可以通过这种方式在任意方向上调整终端的大小:

         \
          \
           \ |
          ___|

它坚持要求我像这样调整它的大小

---->  

或者像这样

  |
  |
  V

有时,需要 5 秒的尝试错误将鼠标移动到窗口的一角,然后错误才能使鼠标以一定角度显示,而不是向上或向侧面显示,以便可以在仅垂直或水平以外的方向调整窗口大小。

我正在使用出现在菜单->系统->终端中的标准终端仿真。我认为这与桌面类型有关。我使用的是 Linux mint 14,带有 xfce 发行版。

有没有办法禁用水平和垂直调整大小,而只保持角度调整大小?因为我可以同时使用它,而且它更加灵活。现在我必须先垂直调整大小,然后水平调整大小以放大窗口,这是非常愚蠢的。

这实际上影响所有窗口,而不仅仅是终端。例如,当我打开 Firefox,并想要调整它的大小时,会发生同样的问题。这就是为什么我认为这是一个窗口管理器配置问题,而不是 gnome 终端本身。

换句话说,我希望它像在窗口上一样工作,我抓住任何窗口的一角,并且总是可以在任意方向调整大小。当然可以在 Linux 中做到这一点。

答案1

快速修复:按住Alt键,右键单击窗口并将窗口拖动到所需的大小。

答案2

您可以尝试使用xdotool.该工具与以下内容无关,xfce但直接相关X

拳头拿一个窗口编号经过:

xwininfo

或者

winId=$(xwininfo | sed -ne 's/^.*window id: \(0x[0-9a-f]*\) .*$/\1/ip')

click在终端窗口上,并且:

xdotool windowsize --usehints $winId 100 30

或者如果winId存储这样的图形窗口的 id:

xdotool windowsize $winId 1024 800

答案3

我对 Windows 感到非常烦恼,我感到绝望,然后编写了函数来一劳永逸地处理它。如果您将它们放入初始化文件中,您可能永远不会注意到它们。以下是其中的一些内容,并附有评论,因此您将了解自己可以做什么以及如何做。但请注意,这需要大量的摆弄;但当完成后,摆脱鼠标,一切看起来都是你想要的方式,等等——这是值得的。

## hide all X windows
hideall () {
    DISPLAY=":0"  # (if you call this function from a tty)
    wmctrl -k on  # show desKtop: i.e., hide all windows
}

# urxvt window
# note: try `wmctrl -l` (as in "list") for windows to manipulate
alias maxu='wmctrl -r urxvt -b toggle,fullscreen' # -r: taRget window
alias hidu='wmctrl -r urxvt -b toggle,hidden'     # -b: what to do
fiftu () {
  wmctrl -r urxvt -b remove,fullscreen
  wmctrl -r urxvt -e 0,0,358,1024,381             # -e: rEsize
}

如果您想在执行其他操作时隐藏窗口,这里是一个更高级的示例,说明如何存储和重新加载窗口的状态:

# store what window was displayed as a numeric value
WIN=`xprop -display ":0" -root | grep ^_NET_ACTIVE_WINDOW \
                               | cut -d" " -f5`
# hide all windows
hideall

# do stuff

# restore the window, using the number you obtained above
#  -i instead of a string, identify window with a numeric value
#  -a Activate
DISPLAY=":0" wmctrl -i -a $WIN

相关内容