创建键盘快捷键,无需 Compiz 即可将窗口移动到不同的显示器

jtl*_*sey 7 window-manager shortcut-keys mate ubuntu-mate

我正在运行 Ubuntu MATE 16.04,我喜欢它开箱即用。我唯一需要的是能够使用键盘将我的窗口移动到不同的显示器。

我一直在使用CompizConfig 设置管理器并且它可以工作,但是 Compiz 在我的系统上导致一长串问题,当我禁用它时这些问题就会消失。Compiz 是一个大包,我想要的是能够将我的窗口移动到不同的显示器。所有其他功能都已内置到 Ubuntu MATE 16.04 LTS 键盘快捷键菜单中(切换工作区、将窗口移动到工作区、向左、向右、水平、垂直平铺等)。

出于某种原因,将窗口向东(右侧)移动屏幕将窗口向西(左侧)移动到屏幕的一侧不适用于所有应用程序(尤其是 Firefox,但 Chrome 和其他应用程序)。

是否有指南显示如何制作自己的键盘快捷键?我找到了一个网站,有人为 Xubuntu 制作了自己的网站。当我试图弄清楚他们做了什么时,有没有人有一种简单的方法来创建在显示器之间移动窗口的键盘快捷键?

Ser*_*nyy 8

介绍

window_jumper.py是一个 python 脚本,它将在多个监视器上循环移动活动窗口。例如,如果您有 3 个显示器 A、B 和 C,重复按下指定的快捷键会将窗口从 A、B、C、C 移回 A。窗口位置将是每个屏幕的左上角.

用法

手动运行脚本

python window_jumper.py
Run Code Online (Sandbox Code Playgroud)

该脚本没有命令行选项(截至目前,但可能在未来)。

设置键盘快捷键

Ubuntu Unity 步骤:

  1. 转到System Settings-> KeyboardShortcuts tab,选择Custom Shortcuts并单击+按钮。自定义快捷方式弹出窗口将出现两个字段Name:Command:

  2. 对于Name字段,调用它window_jumper。用于Command:提供脚本文件的完整路径。例如,python /home/ubuntu_user/bin/window_jumper.py。点击Apply

  3. 单击最右侧的列,New accelerator将出现单词。按您希望为此脚本指定的键盘快捷键。例如,我选择了CtrlSuperJ

Ubuntu Mate 说明:

  1. 前往SystemControl CenterKeyboard Shortcuts,点击Add。自定义快捷方式弹出窗口将出现两个字段Name:Command:

  2. 对于Name字段,调用它window_jumper。用于Command:提供脚本文件的完整路径。例如,python /home/ubuntu_user/bin/window_jumper.py。点击Apply

  3. 最右侧的列(标记为Shortcut)将Disabled在该行上显示单词。单击单词,文本将更改为New shortcut。按您要使用的组合键。

脚本源

也可在GitHub 上使用。如果您有 GitHub 帐户,请在那里提交问题和功能请求。

python window_jumper.py
Run Code Online (Sandbox Code Playgroud)

旁注:

  • 代码可能会也可能不会更改以包含其他功能。
  • 如果您收到ImportError: No module named gi运行sudo apt install python-gi(感谢Dariusz评论