闲置时在Xorg中禁用鼠标(非触摸板!)

伊戈尔

我是一个狂热的键盘用户,但是我仍然时不时需要鼠标。为了最大程度地减少手的行程,我将鼠标放在键盘下方。(在旁注中,以这种方式使用鼠标对我的手来说更自然。)

我目前正在使用整洁的方式隐藏指针,而无需使用鼠标。不幸的是,我有时在键入时会轻按它,这会导致指针重新出现。有时,这会将指针移到另一个窗口上,这又将焦点从当前窗口移开。(我使用的是草率的焦点,因此不能更改此选项。)

我现在正在寻找一种可能性,不仅可以在一定的空闲时间后隐藏指针,还可以完全禁用鼠标。单击任何鼠标按钮或使用鼠标滚轮,然后应重新启用鼠标。

pbm

我们需要完成的第一件事是关闭鼠标,但是只能在X中。为此,我们可以使用xinput

我们需要发现连接到计算机(连接到X服务器)的输入设备:

pbm@tauri ~ $ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ A4Tech USB Mouse                          id=10   [slave  pointer  (2)]
⎜   ↳ Macintosh mouse button emulation          id=11   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
     [...]

设备,我们需要使用的是A4Tech USB Mouseid=10接下来,我们需要检查该设备的属性:

pbm@tauri ~ $ xinput list-props "A4Tech USB Mouse"
Device 'A4Tech USB Mouse':
       Device Enabled (121):   1
       [....]

要关闭设备,我们需要更改属性Device Enabled

xinput set-prop DEV PROP STATE
xinput set-prop "A4Tech USB Mouse" "Device Enabled" 0

打开它:

xinput set-prop "A4Tech USB Mouse" "Device Enabled" 1

接下来的事情是自动执行...;)在此示例中,我们将通过键盘快捷键禁用鼠标,然后通过按鼠标左键和右键将其启用。

为此,我们可以使用actkbd-在X服务器外部运行的键盘(但不仅限于)快捷方式守护程序。

首先,我们需要为actkbd:创建一个空的配置文件touch /etc/actkbd.conf下一步是发现连接到计算机的设备:

pbm@tauri ~ $ cat /proc/bus/input/devices 
I: Bus=0003 Vendor=046d Product=c312 Version=0110
N: Name="BTC USB Multimedia Keyboard"
P: Phys=usb-0000:00:1d.0-1.6/input0
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.6/2-1.6:1.0/input/input6
U: Uniq=
H: Handlers=kbd event3 
B: EV=120013
B: KEY=1000000000007 ff9f207ac14057ff febeffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7

I: Bus=0003 Vendor=09da Product=000a Version=0110
N: Name="A4Tech USB Mouse"
P: Phys=usb-0000:00:1d.0-1.5/input0
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.5/2-1.5:1.0/input/input8
U: Uniq=
H: Handlers=mouse1 event5 
B: EV=17
B: KEY=ff0000 0 0 0 0
B: REL=343
B: MSC=10

[...]

在这一部分中,最有趣的用法是键盘和鼠标设备的名称和处理程序。

首先,我们处理通过键盘快捷键关闭鼠标的操作,因此我们需要发现键ID:

pbm@tauri ~ $ sudo actkbd -s -d /dev/input/event3
Keys: 29+41+42 //we need to press keys that will turn off mouse, 29+41+42 is Ctrl + Shift + `

当我们知道密钥ID是什么时,我们需要将其放入配置文件(/etc/actkbd.conf):

29+41+42:::sudo -u pbm DISPLAY=:0 xinput set-prop "A4Tech USB Mouse" "Device Enabled" 0

要测试它,我们需要actkbd在守护程序模式下运行

pbm@tauri ~ $ sudo actkbd -d /dev/input/event3 -D

以同样的方式,我们需要处理“打开”事件:

  1. 检查鼠标设备的处理程序
  2. 使用以下命令检查鼠标左键和右键的键代码 actkbd
  3. 放到 actkbd.conf
  4. 运行actkbd守护程序以监视鼠标输入设备

运行的守护程序可以在环境中实现为初始化脚本或自动运行脚本。

要自动关闭鼠标,我们可以监视输入设备(cat /dev/input/event5)并在没有输入时将其关闭...

希望我的简短介绍对您有所帮助...;)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

闲置时在Xorg中禁用鼠标(非触摸板!)

来自分类Dev

使用鼠标时禁用触摸板

来自分类Dev

使用鼠标时禁用触摸板

来自分类Dev

盖子掉下时禁用触摸板

来自分类Dev

在输入LXQt时禁用触摸板

来自分类Dev

打字时禁用触摸板

来自分类Dev

连接USB鼠标时如何禁用上网本的触摸板

来自分类Dev

GNOME:连接外部鼠标时禁用触摸板(跨会话保留dconf设置)

来自分类Dev

如何使这个“打字时禁用触摸板”python 脚本更快地启用触摸板?

来自分类Dev

禁用触摸板的加载

来自分类Dev

如何禁用触摸板?

来自分类Dev

使用 LXDE 在 Ubuntu 18.04 中打字时如何禁用触摸板?

来自分类Dev

桌面启动时禁用触摸板

来自分类Dev

如何在启动时完全禁用触摸板?

来自分类Dev

浏览器中的鼠标滚轮/触摸板滚动

来自分类Dev

选项从“鼠标和触摸板”设置中消失了

来自分类Dev

永久禁用14.04中的触摸板吗?

来自分类Dev

触摸板启用/禁用16.04中的问题

来自分类Dev

在初始化脚本中禁用触摸板

来自分类Dev

在Lubuntu中无法输入时禁用触摸板

来自分类Dev

如何在Ubuntu 17.10中禁用触摸板?

来自分类Dev

鼠标和触摸板设置丢失

来自分类Dev

如何从触摸板获取鼠标滚动?

来自分类Dev

鼠标和触摸板设置丢失

来自分类Dev

禁用预测滚动-鼠标滚轮(OnScroll)事件触发次数过多(触摸板)

来自分类Dev

如何在Windows Precision触摸板上禁用鼠标加速?

来自分类Dev

禁用触摸板硬件按钮

来自分类Dev

键入时如何禁用触摸板?

来自分类Dev

键入时如何禁用触摸板?