Назначьте несколько сочетаний клавиш для одного действия

15

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

Я могу изменить громкость только одним звуком за раз: с тем, который я определяю в приложении «Сочетания клавиш». Там в любом случае?

ksemeks
источник
Связано: askubuntu.com/questions/292494/…
Алик Эльзин-килака

Ответы:

4

Я делаю это с помощью пользовательских ярлыков :

снимок экрана настроек сочетаний клавиш

Я использую xdotool key --clearmodifiers XF86AudioLowerVolumeXF86AudioRaiseVolume) команду вместо amixer set 'Master' 10%+. Единственное отличие / недостаток, который я замечаю, заключается в том, что даже кнопка «Повторить ключи» на вкладке « Набор » установлена, это не относится к этому пользовательскому ярлыку.

Тем не менее, я не смог сделать то же самое, что и использовать Fn+, F7чтобы выключить экран ( xset dpms force standby). Он не обнаруживает это как ярлык.

Пабло Бьянки
источник
4

Вы можете назначить несколько сочетаний клавиш (сочетаний клавиш) для одной и той же команды с помощью gsettingsкомандной строки.

Важно знать, что графический интерфейс настроек Ubuntu 18.04 показывает только первую привязку клавиш для команды, поэтому, если у вас несколько привязок клавиш для команды, остальные не будут отображаться в настройках. Вы можете использовать gsettingsдля всех сочетаний клавиш.

Допустим, я хочу добавить еще одну привязку клавиш для «Переключиться в рабочую область 1». По умолчанию для меня было Super+Home, но я хочу добавить вторую привязку клавиш Ctrl+1.

# list all keybindings
gsettings list-recursively | grep -e org.gnome.desktop.wm.keybindings -e org.gnome.settings-daemon.plugins.media-keys -e org.gnome.settings-daemon.plugins.power | sort 

# confirm no other keybinding conflicts
gsettings list-recursively | grep '<Control>1'

# set multiple keybindings for "Switch to Workspace 1"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-1 "['<Super>Home', '<Control>1']"

# confirm value is set correctly
gsettings get org.gnome.desktop.wm.keybindings switch-to-workspace-1

Теперь вы можете использовать Super+Homeили Control+1для переключения в рабочую область 1. Помните, что вы увидите только первыйSuper+Home в графическом интерфейсе настроек, но он будет работать!

wisbucky
источник
1
Это работает только с горячими клавишами оконного менеджера, а не с медиа-ключами, которые искали пользователи. К сожалению, медиа-ключи принимают только строки, а не массивы.
хакель
3

Возможно, вы могли бы использовать xmodmap, чтобы переназначить кнопки на вашей гарнитуре на те же, что вы используете для клавиатуры.

Джо-Эрленд Шинстад
источник
Да, но теперь мне нужно знать, каково действие по умолчанию «Повышение / понижение звука» из приложения «Горячие клавиши». Потому что, когда я использую свою собственную команду «amixer channel set opt», она поднимает / понижает звуковую карту MBO, пока я слушаю свою гарнитуру.
ksemeks
1
@ksemeks: действия: amixer set Master 10%+увеличить громкость, amixer set Master 10%-чтобы уменьшить громкость. Чтобы получить уведомление о notify-send
датчике
@danjjl: ну, вот почему я пытаюсь найти точное действие громкости вверх / вниз из Настройки-> Клавиатура-> Сочетания клавиш
ksemeks