如何在 Ubuntu 22.04 中自动将窗口大小调整为屏幕的 1/4 并将其捕捉到角落?

如何在 Ubuntu 22.04 中自动将窗口大小调整为屏幕的 1/4 并将其捕捉到角落?

我写这是针对 Ubuntu 18.04 和 20.04 的热门答案,但现在由于 Wayland,它无法在 Ubuntu 22.04 上运行。

https://github.com/negesti/gnome-shell-extensions-negesti#wayland--wnck

由于这种依赖性以及 wayland 和 X11 识别应用程序的不同概念(wm_class 与 application_id)Wayland 不受支持!

来自https://extensions.gnome.org/extension/39/put-windows/

在此处输入图片描述

有什么想法、解决办法或者替代方案吗?

在我玩了 2 分钟之后,这个东西还算有用,但是用处不大:https://help.ubuntu.com/stable/ubuntu-help/shell-windows-states.html.en

如果这很重要,那么全新安装的 Ubuntu 22.04 有GNOME Shell 42.5如图所示gnome-shell --version

WinTile 看起来很有前途,但目前还没有什么运气。我提出了一个问题:https://github.com/Fmstrat/wintile/issues/91#issue-1504090370

答案1

我已经发现了如何安装和使用两个非常好的 Gnome 扩展

  1. 很棒的瓷砖

    允许通过快捷键捕捉窗口,就像 Ubuntu 14.04 和 16.04 中 Unity 中的“Compiz”一样,并且“安装窗户”在 Ubuntu 18.04 和 20.04 中的 Gnome 中。

  2. 温蒂尔(通常较新且功能更丰富,但可能会有更多 bug 且不太好用) 和重装上阵(一个死的 WinTile 分支,修复了各种错误,但更加实用,也是我通常使用的)

    只需将窗口拖到屏幕的边缘或角落即可调整窗口大小、平铺和捕捉窗口——显然与现代版本的 Windows 相同。对于鼠标用户来说非常有用且快速。已在 Ubuntu 18.04、20.04 和 22.04 中测试并运行。

    WinTile 还向 Ubuntu 的 Gnome 窗口管理器添加了以下快捷方式序列:@Bruni 的回答对于 Kubuntu,Ubuntu 没有这个功能,即:

    例如,要捕捉到左上角:Super+left Arrow然后Super+upper Arrow

我喜欢用两个都上述扩展。我已经测试过两个都在 Ubuntu 22.04 中,同时使用 X11 和 Wayland 窗口管理器服务器,并且两个扩展在两种情况下都可以运行。

扩展 1:Awesome Tiles(使用键盘快捷键调整窗口大小并将窗口捕捉到边缘和角落)

在 Ubuntu 22.04 中使用 X11 和 Wayland 窗口管理器服务器进行了测试。

由于一个Ubuntu 22.04 中的已知错误, 你可以不是从此处的浏览器安装“Awesome Tiles”:https://extensions.gnome.org/。相反,从以下位置安装它gnome-shell-extension-manager

# install it
sudo apt update
sudo apt install gnome-shell-extension-manager

按下Windows键并输入“扩展管理器”打开它的 GUI。它的图标是一个蓝色的拼图:

在此处输入图片描述

点击顶部的“浏览”选项卡,然后搜索“awesome tiles”。点击“安装”按钮进行安装。在这里你可以看到我的已经“安装”了:

在此处输入图片描述

单击顶部的“已安装”选项卡,确保滑块显示“Awesome Tiles”已激活(单击滑块以激活/停用它),然后单击齿轮图标以修改其设置:

在此处输入图片描述

以下是其使用的默认设置和快捷键:

在此处输入图片描述

如您所见,它使用Super( Windows) 键 + 小键盘键。然而,许多较小的笔记本电脑和键盘在键盘右侧没有小键盘,因此我建议您使用Alt+ Windows+ 字母快捷键,我以前用过“Put Windows”。另外,我真的很讨厌窗户周围的缝隙(比如很多--因此我不推荐这个工具根本如果我无法删除它们),所以我建议您通过将“窗口和工作区之间的间隙”更改为 0 并禁用“窗口之间的间隙”来消除间隙。

但是,在添加我喜欢的所有快捷方式之前,我们必须禁用默认的 Ubuntu ++ Alt“屏幕阅读器打开或关闭”快捷方式,因为它会造成干扰。转到您的 Ubuntu 设置 --> 键盘 --> 单击“查看和自定义快捷方式” --> 输入“alt+super+s”,如下所示:WindowsS

在此处输入图片描述

单击“打开或关闭屏幕阅读器”快捷键,您可以看到当前已分配给Alt+Super+S,然后按Backspace禁用该快捷键 --> 单击“设置”按钮。现在您可以看到它处于“已禁用”状态。完美:

在此处输入图片描述

现在继续将“Awesome Tiles”键盘快捷键更改为以下设置。请记住,键SuperWindowsPC 上的键。以下是我的新设置。我已突出显示我刚刚更改的所有内容:

在此处输入图片描述

更新:我刚刚也改变了这个:我把 0.35 改为 -> 0.33,并且添加了 0.25:
在此处输入图片描述

如果您想将所有设置重置为默认值,请参阅我的回答:如何将 Gnome 扩展程序的设置重置为默认设置?例如:Ubuntu 22.04 中的“Awesome Tiles”?

您可能想要调整的另外两个设置是“中心平铺步骤”和“侧面平铺步骤”。如果您反复按下相同的快捷键,它会循环显示那里设置的多个尺寸设置。这些值从 0 到 1,其中 表示0该位置全尺寸的 0%,1表示该位置全尺寸,因此,反复按下相同的快捷键可循环显示每个尺寸的 3 个(当前设置)不同尺寸,尺寸根据这些设置确定。

为了获得最一致的结果,我喜欢先将窗口平铺到中心。因此,如果我想调整大小并将窗口对齐到左上角,我会先按Alt+ Windows+S将窗口居中,然后按Alt+ Windows+Q调整大小并将其对齐到左上角。每次移动之间居中可确保它始终具有该新位置的正确大小。

就是这样!这是一个出色的扩展使用键盘快捷键来调整窗口大小并将窗口捕捉到边缘和角落!

扩展 2:WinTile(允许您使用鼠标拖动窗口来调整大小并将其对齐到左侧、右侧或角落)

在 Ubuntu 22.04 中使用 X11 和 Wayland 窗口管理器服务器进行了测试,在 Ubuntu 18.04 和 20.04 中使用 X11 进行了测试。它在 Ubuntu 22.04 中运行良好,XWayland 窗口管理器服务器,可轻松将窗口捕捉到角落或边缘。

注意:WinTile 还增加了使用键盘捕捉角落的功能,例如使用Super+left Arrow然后Super+ 。upper Arrow

这是一个动画 gif来自 GitHub 页面:https://github.com/Fmstrat/wintile

在此处输入图片描述

以下是仓库:

  1. 温蒂尔:https://github.com/Fmstrat/wintile
  2. WinTile 重装上阵:https://github.com/ElectricRCAircraftGuy/wintile-reloaded

选项 2.1:WinTile Reloaded(我建议您首先尝试;通常错误较少;从 WinTile 分叉而来)

注意:要查看我之前的“WinTile Reloaded”安装说明,请参阅此处此答案的早期版本:https://askubuntu.com/revisions/1446690/19

安装

我们将使用我的 repo forkhttps://github.com/ElectricRCAircraftGuy/wintile-reloaded。安装方法如下:

使用Ctrl++打开终端并逐个运行以下命令:AltT

cd ~/.local/share/gnome-shell/extensions
# clone the tool
git clone https://github.com/ElectricRCAircraftGuy/wintile-reloaded.git
# rename it
mv wintile-reloaded [email protected]

# log out of Ubuntu
gnome-session-quit

启用并配置它

退出 Ubuntu 并重新登录后,按 Windows 键并搜索“扩展管理器”。从 Ubuntu 22.04 开始,它是一个蓝色的拼图,如上图所示。点击它。单击滑块以激活“WinTile RELOADED”。单击齿轮图标并按如下方式设置您的设置:

在此处输入图片描述

就这样!将窗口拖到显示器的角落或边缘,随心所欲。

请注意,有两种方法可以更改设置:

  1. 选项 1:通过浏览器:
    1. 到这里:https://extensions.gnome.org/local/
    2. 在“已安装的扩展”标题下,查找“WinTile RELOADED”。
    3. 单击小工具(蓝色螺丝刀和扳手)图标。
  2. 选项 2 [我的偏好]:通过gnome-shell-extension-manager您应该已经按照上面的“扩展 1”说明安装的 GUI。
    1. 按下Super( Windows) 键,然后输入“extensions”。打开“Extensions”工具。
    2. 找到“WinTile RELOADED”并点击回合设置按钮。

在这两种情况下,都会打开上述设置窗口。以下是可以调整的设置。我将Delay in ms before preview displays设置从默认的500ms 降低到100ms,以使其更加快捷,和我将我的Number of columns设置从降低32

最后的想法

此工具并使用它广泛地

总体而言,它不如“Put Windows”或“Awesome Tiles”那么通用,但 WinTile 在 Ubuntu 22.04 中运行良好,同时支持 Wayland 和 X window 服务器,而且对于 Windows 用户和喜欢使用触控板或鼠标的用户来说,它更加直观

答案2

如果有人偶然发现这一点并想在 Kubuntu 上做同样的事情:

例如,要捕捉到左上角:Super+left Arrow然后 Super+upper Arrow

答案3

我的做法是使用两个快捷键,++Ctrl将窗口移到左侧或右侧,然后Super++将其移到角落。即:按住Left/RightCtrlSuperUp/Down

这是:按住Ctrl+ Super,然后按箭头键。

gsettings set org.gnome.desktop.wm.keybindings move-to-side-e "['<Control><Super>Right']"
gsettings set org.gnome.desktop.wm.keybindings move-to-side-n "['<Control><Super>Up']"
gsettings set org.gnome.desktop.wm.keybindings move-to-side-s "['<Control><Super>Down']"
gsettings set org.gnome.desktop.wm.keybindings move-to-side-w "['<Control><Super>Left']"

作为额外的奖励,我可以使用++Ctrl来使窗口居中:SuperLeft/Right

gsettings set org.gnome.desktop.wm.keybindings move-to-center "['<Control><Super>c']"

这回答了你在这里真正要问的问题(即,将窗口放在角落里),但它不会调整窗口大小以适合屏幕的四分之一,这可能是你想要的故意的询问。对于平铺,仍然有几个扩展可用,即使您列出的扩展不再更新。在 Gnome Extensions 网站上搜索“tile”以找到并尝试它们。

要重置为默认值,请更改setreset省略命令的最后一个参数。

相关内容