首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在dwm启动时设置光标位置?

如何在dwm启动时设置光标位置?
EN

Unix & Linux用户
提问于 2018-12-31 22:30:42
回答 1查看 987关注 0票数 2

我试图了解dwm是如何在鼠标光标启动后决定鼠标光标的初始位置的。我在dwm.c中看了一段时间,但是我对C和X11的了解并没有减少它。

我想要做的是把光标放在我的主监视器中。现在,它是在另一个上创建的,导致它最初被选中。当我第一次启动终端或其他东西(使用键盘)时,它在错误的监视器中打开。这是一个小麻烦,但也是一个学习的借口:)

我不确定dwm是否应该对此负责,或者xorg可能是?dwm是否知道使用xrandr的主要输出集?

更新

在调用run()之前,我尝试在dwm.c中使用XWarpPointer()。通过这种方式,我成功地将指针移动到屏幕的中心,但移到了错误的位置:)

更新2

正如评论中所建议的那样,这可能是我的X-朗设置中的一些错误。下面是:

代码语言:javascript
复制
xrandr —output DP-0 —rotate left
xrandr —output DP-0 —left-of DP-4
xrandr —output DP-4 —pos 1080x160
xrandr —output DP-4 —primary

编辑: dwm首先初始化DP-0 (其中状态栏首先出现)。虽然如果我断开鼠标并重新启动,dwm的行为是正确的,焦点是DP-4 (尽管首先初始化了DP-0 )。

更新3

作为一个测试,我启动了i3wm而不是dwm。指针按预期在屏幕中心(DP-4)初始化,一切都很好。

EN

回答 1

Unix & Linux用户

发布于 2021-10-17 20:49:25

我在Ubuntu20.04中使用dwm-6.2时也遇到了同样的问题,并通过使用X11自动化工具(默认情况下安装了多个发行版)迫使鼠标光标移动到所需的监视器来解决这个问题。只需在调用之前将以下行添加到启动dwm的脚本中:

代码语言:javascript
复制
xdotool mousemove 2000 200

将值替换为适当的x坐标,其中0位于最左边屏幕(虚拟屏幕)的左上角。

有一条来自man dwm的提示:

Mod1 1Mod1 1-聚焦下一个屏幕,如果有的话。Mod1 1-移位-,发送聚焦窗口到先前的屏幕,如果有的话。Mod1 1-移位-将聚焦窗口发送到下一个屏幕,如果有的话。

因此,要方便地在监视器之间移动,请使用:

代码语言:javascript
复制
[Alt}+[.]
[Alt]+[,]
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/491832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档