Pho*_*son 10 scripts shortcut-keys multiple-monitors cursor
我使用 Gnome3 作为带有两台显示器的桌面界面。我希望能够使用键盘将鼠标光标从一台显示器移动到另一台显示器,例如Ctrl + Alt + Right-key. 我该如何设置?
下面的脚本可以使用两个参数运行:left和right。
在双显示器-设置(左/右,在任何配置),该脚本将鼠标移动到中心或者左或右显示器,根据不同的参数。
#!/usr/bin/env python3
import subprocess
import sys
arg = sys.argv[1]
screeninfo = [
s for s in subprocess.check_output("xrandr").decode("utf-8").split()\
if s.count("+") == 2
]
if arg == "left":
match = [s for s in screeninfo if s.endswith("+0+0")][0]
elif arg == "right":
match = [s for s in screeninfo if not s.endswith("+0+0")][0]
data = [item.split("x") for item in match.split("+")]
numbers = [int(n) for n in [item for sublist in data for item in sublist]]
coord = [str(int(n)) for n in [(numbers[0]/2)+numbers[2], (numbers[1]/2)+numbers[3]]]
subprocess.Popen(["xdotool", "mousemove", coord[0], coord[1]])
Run Code Online (Sandbox Code Playgroud)
脚本需要xdotool:
sudo apt-get install xdotool
Run Code Online (Sandbox Code Playgroud)将脚本复制到一个空文件中,另存为 move_mouse.py
测试运行脚本。从终端运行命令:
python3 /path/to/move_mouse.py left
Run Code Online (Sandbox Code Playgroud)
和
python3 /path/to/move_mouse.py right
Run Code Online (Sandbox Code Playgroud)如果一切正常,请将命令添加到两个可用的快捷方式:选择:系统设置 >“键盘”>“快捷方式”>“自定义快捷方式”。单击“+”并添加上面的命令。
该脚本不是gnome特定的;它应该可以在所有 Ubuntu 发行版上正常运行。
我们可以通过以下命令将鼠标移动到特定位置(例如):
xdotool mousemove 300 500
Run Code Online (Sandbox Code Playgroud)要计算两个屏幕中的目标位置(居中),我们需要了解连接的屏幕位于任意布局中,例如
在 的输出中xrandr,我们可以找到关于两个屏幕的信息、它们的分辨率以及它们在跨越布局中的位置,例如:
1280x1024+1680+128
Run Code Online (Sandbox Code Playgroud)要获得每屏(中心)的目标位置,我们需要做的就是将第一和第二个数字(1280x1024,分辨率)除以 2,然后将计算出的两个位置添加到每屏的偏移量(本例中为 +1680+128)案件)。这正是脚本所做的。
随后,找到的数字用作运行xdotool mousemove-command 的参数。
| 归档时间: |
|
| 查看次数: |
2711 次 |
| 最近记录: |