![使 xinput 更改永久生效](https://linux22.com/image/840080/%E4%BD%BF%20xinput%20%E6%9B%B4%E6%94%B9%E6%B0%B8%E4%B9%85%E7%94%9F%E6%95%88.png)
我不喜欢鼠标滚轮点击执行“粘贴”的默认功能。我可以通过执行以下操作来更改它:
$ xinput set-button-map 12 1 0 3 4 5 6 7
这工作正常,但如果我重新启动,我必须记得再做一次。
我的问题是,如果我需要重新启动等,我该如何让这一点自动发生?
我正在使用 Ubuntu 12.04
答案1
您必须在.xsessionrc
文件中添加该行。为此,请使用以下命令:
echo "xinput set-button-map 12 1 0 3 4 5 6 7" >> ~/.xsessionrc
答案2
您可以在每次登录时运行该命令,也可以将其放入 X.org 配置 ( /etc/X11/xorg.conf
) 中,如下所示:
Section "InputDevice"
Identifier "Logitech USB-PS/2 Optical Mouse"
Driver "evdev"
Option "Device" "/dev/input/by-id/usb-Logitech_USB-PS_2_Optical_Mouse-event-mouse"
Option "ButtonMapping" "12 1 0 3 4 5 6 7"
EndSection
我不知道您设备的标识符和驱动程序选项,但您可以xinput
通过在 中进行嗅探来获取这些信息/dev/input
。
答案3
如果你使用startx或init 3,xessionrc是一个很好的解决方案
echo "xinput..yourcommand" >> $HOME/.xsessionrc
如果您在 init 4/5 上使用 xfce,一个好的解决方案是创建一个指向脚本的 .destkop 文件,您可以在其中输入命令。
例如
vim .config/autostart/xinput.desktop
[Desktop Entry]
Hidden=false
Version=1.0
Name=xinput
Name[no]=xinput
Name[pt_BR]=xinput
Name[ru]=xinput
Name[sl]=xinput
Name[sv]=xinput
Comment=xinput
Comment[no]=xinput
Icon=xinput
Terminal=false
Type=Application
StartupNotify=false
Categories=System;
Exec=/home/you/scripts/xinput.sh
RunHook=0
vim /home/you/scripts/xinput.sh
#!/bin/bash
xinput..yourcommand
使其可执行
chmod +x /home/you/scripts/xinput.sh
下次登录时该命令将运行。