启动时将鼠标指针放在特定的显示器上?

启动时将鼠标指针放在特定的显示器上?

Lubuntu 18.04 在 nVidia 显卡上配备 3 个显示器:

在此处输入图片描述

然而,桌子只有 2 个物理屏幕。左侧和中间的显示器连接正常 - 1 个端口到 1 条线到 1 个屏幕 - 但右侧显示器通过交换机/分路器(除其他外)馈送不需要在本地看到的广播显示器。因此,这 3 个显示器中最右边的显示器通常不可见。它如果需要的话可以看到——其中一个开关/分配器的输出进入右侧物理屏幕的第二个输入——但这需要一些工作,你必须“知道”那是为什么你看不到某些东西。

当然,系统启动时鼠标指针的默认位置就在右侧两台显示器边界的右侧,刚好超出物理可视区域的边缘。因此,自动更新窗口出现在那里,除了任务栏上的按钮外,看不到。

我不想完全禁止使用该显示器,因为我希望生产软件的输出窗口自动转到那里,目前它确实做到了。但是有没有办法将鼠标指针放在启动时和更新窗口可见的地方?


更新:@pierrely 对 xdotool 的建议是几乎我正在寻找的东西。它在终端中运行完美,但在启动时什么也不做。(至少,什么都看不见)

此脚本:

#!/bin/bash

# Triggered from:
# Menu -> Preferences -> Default applications for LXSession -> Autostart

sleep 10
echo >> /home/hrcc/Desktop/debug.log

# Put the mouse pointer somewhere sensible (not on the far-right broadcast screen)

date                           >> /home/hrcc/Desktop/debug.log
whoami                         >> /home/hrcc/Desktop/debug.log
xdotool mousemove --sync 10 10 >> /home/hrcc/Desktop/debug.log 2>>&1
date                           >> /home/hrcc/Desktop/debug.log

exit 0

生成此日志文件:

Mon Jul 13 13:50:36 CDT 2020
hrcc

因此看起来好像 xdotool 知道它不起作用并且阻止像 --sync 选项告诉它的那样工作,但我有点希望它能起作用。

答案1

移动一些电缆似乎是最直观的答案,但是:

我不知道你说的“启动”是什么意思,在启动过程中?...我也不知道你说的更新窗口是什么意思。我想我知道,但是......

我不知道您提到“光标”是什么意思。。。同样,我想我知道,但它与我不明白的其他东西相冲突。然后我发现您显然在使用图形桌面。

你指的是两个不同的阶段吗?启动然后是图形桌面?

至于启动:
我在想,不管怎样,如果将卡连接在右边的显示器上,将卡连接在左边的显示器上,难道不能解决问题吗?......然后通过 nvidia 设置重新组织桌面?

如果我理解正确的话(我对此表示怀疑),我相信启动期间的屏幕指定是在 BIOS 中选择的...而且我不确定你是否可以改变这种行为,除非你使用多个显卡并在它们之间进行选择...(不是在同一张卡上的连接之间。但我可能是错的)

就桌面而言:
(我正在使用 Mate Desktop,但是)在偏好设置 --> 外观 --> Windows.... 在“位置”选项卡上,有一个选项是“将新窗口置于中央”。. 看起来您是在说,既然您看到了“任务栏按钮”,那么窗口实际上应该位于中间屏幕上?也许这会使其显示在屏幕中央。

答案2

原来是语法错误,我没有看到,因为启动脚本的 stdout 和 stderr 不是自动可见的。我在终端中运行启动脚本,它在不起作用的行上给出了错误。

仔细检查后,我注意到 stderr 到 stdout 的重定向中有一个双箭头。(2>>&1) 将其更改为单箭头 (2>&1),就可以正常工作!甚至不需要在开始时休眠。


还请注意,下一个 LTS 版本 20.04 有一个不同的显示管理器,它从一开始就没有这个问题。它将指针放在覆盖所有显示器的矩形的中心,即使我的一个显示器没有物理连接,我也能看到这个矩形。

我一直在考虑升级发行版,但犹豫不决,因为这是一台必须工作的实时生产机器,即使它有点过时。然后一个安全更新破坏了显示管理器……

相关内容