Как поменять местами кнопки мыши для левой руки из терминала?


30

Я левша.
Поэтому я хочу поменять типичные кнопки мыши на правый и левый щелчки.

Я хочу сделать это через терминал . Может кто-нибудь предложить команду для этого?

Можно ли поменять эти клики и на экране входа в систему ? Я использую Ubuntu 12.04.

Ответы:


26
xmodmap -e "pointer = 3 2 1"

в терминале должно работать. Если вы хотите выполнить эту команду в начале lightdm (экран входа по умолчанию), вы можете отредактировать, /etc/lightdm/lightdm.confкак описано здесь - используйте xmodmapкоманду вместо xbacklightскрипта, конечно.


2
это работает для настоящего сеанса .. как сделать его постоянным ???
Fookraa

2
Он должен быть постоянным, если вы вставите его /etc/lightdm/lightdm.conf. Если нет, вы можете поместить его в Startup Applications или создать файл .desktop в ~ / .config / autostart из терминала.
elmicha

У меня нет файла /etc/lightdm/lightdm.conf. Есть ли где-нибудь шаблон для этого?
Матеуш Конечны

25

Вы также можете использовать xinputдля этого.

Это переключит кнопки только на одну мышь.

Первое использование-

xinput list

Чтобы увидеть, где вы мышь, будет что-то вроде

"USB Mouse"     id=12       [slave pointer]

Поэтому используйте номер идентификатора для следующей команды, чтобы переключить назначение кнопки.

xinput set-button-map 12 3 2 1

Итак, вы бы поменяли 12 с идентификатором вашей мыши.

Источник: 1


2
Я нахожу это полезным, потому что у меня часто есть две мыши, левая и правая. Эта техника позволяет им быть зеркальным отражением друг друга.
Рик-777

И тогда вы можете сделать это постоянным, создав конфигурацию устройства Xorg, как описано здесь: linus.haxx.se/2013/03/07/mouse-button-mapping-in-xorg-conf
Apteryx

или просто скрипт запуска, если хотите
Mateo

2
В случае, если мои указательные устройства меняют идентификаторы, я ищу идентификатор как часть командной строки: xinput set-button-map $ (xinput list --id-only "Kensington Kensington Expert Mouse") 3 2 1 Строка в кавычках приходит из "списка xinput" выше.
17

Это следует помечать как ответ, а не использовать xmodmap
ptgamr

7

xmodmapкоманда для изменения отображения кнопки мыши :

xmodmap -e "pointer = 3 2 1"

переназначит первые три кнопки, левый, средний и правый, чтобы они действовали как, правый, средний и левый - фактически не изменяя отображение средней кнопки.

Это применяет изменение к текущему сеансу - точнее, к текущему отображению X, например :0.

Чтобы сохранить изменения, сохраняющиеся в течение сеансов, поместите отображение в файл

~/.Xmodmap

Если его не существует, создайте его, какtouch ~/.Xmodmap

Отредактируйте его, чтобы добавить строку

pointer = 3 2 1

Если pointerлиния уже есть , она, конечно, может иметь какую-то функцию; Вместо того, чтобы заменить его, лучше измените первые три значения - оставив комментарий со старым:

Например,

pointer = 1 2 3 4 5 16 17 8 9 10 11 12 13 14 15 6 7 18 19 20 21 22 23 24

становится

!pointer = 1 2 3 4 5 16 17 8 9 10 11 12 13 14 15 6 7 18 19 20 21 22 23 24
pointer = 3 2 1 4 5 16 17 8 9 10 11 12 13 14 15 6 7 18 19 20 21 22 23 24


Я привык ~/.Xmodmapвсегда работать; Но видите, .Xmodmap работает только тогда, когда автоматический вход отключен? если это не так.


-1

Выполните этот код в командной строке, он удалит и сбросит оптическую мышь и сенсорную панель к значению по умолчанию - щелчок левой кнопкой мыши для щелчка, а правой кнопкой мыши - для выбора параметров.

modprobe -r psmouse
modprobe psmouse proto=imps

-1

Для Ubuntu ~ 12.04 и ранее

#!/usr/local/bin/tcsh -fb

# switches between right and left mouse
set leftMouseHand = `gconftool-2 --get /desktop/gnome/peripherals/mouse/left_handed`
if ( "$leftMouseHand" == "false" ) then
    gconftool-2 --set /desktop/gnome/peripherals/mouse/left_handed true --type boolean
    gconftool-2 --set /desktop/gnome/peripherals/mouse/cursor_theme Oxygen_White_Big --type string
else
    gconftool-2 --set /desktop/gnome/peripherals/mouse/left_handed false --type boolean
    gconftool-2 --set /desktop/gnome/peripherals/mouse/cursor_theme Oxygen_White_Big --type string
endif
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.