小编mek*_*zer的帖子

如何根据是否连接鼠标来切换触摸板?

我想让我的触摸板在连接外部鼠标时自动禁用,并在没有时启用。我曾尝试使用,touchpad-indicator但如果计算机在连接​​鼠标的情况下进入睡眠状态并在断开鼠标的情况下唤醒,则失败。

我试图将以下脚本变成一个守护进程来解决这个问题,但我无法让它工作:

#!/bin/bash

declare -i TID
declare -i MID
TID=`xinput list | grep -Eo 'Touchpad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
MID=`xinput list | grep -Eo 'Mouse\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
if [ $MID -gt 0 ]
then
    xinput disable $TID
else
    xinput enable $TID
fi
Run Code Online (Sandbox Code Playgroud)

我试过 start-stop-daemon -S -x ./myscript.sh -b

setsid ./myscript.sh >/dev/null 2>&1 < /dev/null &

nohup ./myscript 0<&- &>/dev/null &./myscript.sh &

所有这些都返回一些 4 位数字,我想这应该是启动进程的 PID,但是当我启动 lxtask 时,即使我勾选了“查看所有进程”,也没有带有此 PID 的进程。而且,当然,它不起作用!

touchpad xorg bash

11
推荐指数
2
解决办法
2854
查看次数

在锁定屏幕上输入密码时如何运行脚本?

为了根据连接的 USB 鼠标切换笔记本触摸板的启用/禁用,我使用了 touchpad-indicator,它运行一个守护程序来监视连接的设备并采取适当的措施。当我让笔记本进入睡眠状态然后拔下鼠标时,在唤醒时,触摸板被禁用,所以我必须连接 - 断开鼠标才能启用它!我在这个论坛上搜索过这个问题,但都找到了解决方案(在/etc/pm/sleep.d或 中添加脚本/usr/lib/pm-utils/sleep.d)没有用!我提出了一个问题来解决它,但毕竟,即使使用 udev 的规则而不是触摸板指示器重新工作,问题仍然存在!

我要说明的是:如果触摸板在系统级禁用(即连日志记录之前禁用,脚本将在于rc.local,其中,但是,我试过了,没有工作),把脚本在/ etc / PM和 usr/lib/pm-utils可能工作

但是它在会话级别或 udev 适用的任何级别被禁用。你能告诉我把输入密码时会运行的脚本放在哪里吗?不是登录,而是在唤醒后输入密码

更新:@terdon 你不太明白。我什至没有启用 xscreensaver,我怀疑它是否已安装。你看,因为我的帐户有密码,如果我按“注销”或“更改用户”或睡眠模式,之后我将不得不输入我的密码,这与 xscreensaver 或我不喜欢的任何屏幕保护程序无关有他们。

在问这个问题之前,我尝试了你的建议,但没有成功。

更新 2:好的,经过一些调查,我可以看出这是 Lubuntu 特定的问题。我的“成为朋友” lightdm现在的工作(我猜应用在一定程度上其他比的udev)和udev。任何对 lightdm 有任何经验的人都会受到赞赏。

更新 3:多亏了Ubuntu Wiki,我(正确地?)找到了在哪里放置我的脚本调用。因此,我增加session-setup-script=/home/n76/tptoggle.sh/etc/lightdm/lightdm.conf 现在的情况是一样的开始,除了lightdm实际上是试图把触摸板上的用户会话开始时

问题并没有消失,但我觉得我已经接近了,这只是给 lightdm 正确的特权。

请建议如何做。

scripts lubuntu udev wakeup

6
推荐指数
1
解决办法
794
查看次数

标签 统计

bash ×1

lubuntu ×1

scripts ×1

touchpad ×1

udev ×1

wakeup ×1

xorg ×1