На моей клавиатуре есть регулятор громкости, и по умолчанию этот диск запускает действие "Увеличение громкости звука" (так называется ярлык в диалоге сочетаний клавиш), когда я его включаю. Однако это только увеличивает громкость до 100%, и я хочу, чтобы регулятор громкости поднялся до 150% (что я могу сделать в диалоговом окне "Настройки звука", но не с помощью регулятора громкости клавиатуры).

Я нашел команду для увеличения громкости в командной строке: pactl set-sink-volume @DEFAULT_SINK@ +10% (или -10% для ее понижения). Однако я не могу понять, как установить для этой команды обработчики клавиш «Уменьшение / увеличение громкости» (в сочетаниях клавиш). Кажется, что я могу установить для них только определенные нажатия клавиш ... на самом деле, я, кажется, случайно отключил их стандартные действия «Поднять / уменьшить громкость звука», просто пытаясь их изменить, так как кажется, что способ восстановить их действия по умолчанию (не говоря уже о настройке настраиваемой команды) после того, как вы изменили их по умолчанию.

Но, безусловно, должен быть способ указать, что нажатие клавиши " Увеличение громкости звука" запускает pactl set-sink-volume @DEFAULT_SINK@ +10% ... верно?

РЕДАКТИРОВАТЬ: я нашел другой способ изменить привязки клавиатуры, установив dconf-tools а затем используя dconf-editor для редактирования значений в org.mate.SettingsDaemon.plugins.media-keys . Однако у меня есть та же проблема с этим инструментом: я вижу, как заставить привязку вызывать нажатия клавиш, и я вижу, как заставить ее запускать "действия", такие как XF86AudioRaiseVolume ... но я не могу понять, как вызвать pactl set-sink-volume @DEFAULT_SINK@ +10% .

1 ответ1

1

Я наконец понял это, и решение даже не требовало ничего более низкого уровня, чем dconf-editor: вы можете решить всю проблему только с помощью сочетаний клавиш.

Что меня смутило, так это то, что сочетания клавиш отображают действия => сочетания клавиш, а не наоборот (что лично мне показалось бы гораздо более логичным). Это означает, что изменение громкости вверх / вниз не меняет того, что происходит при увеличении / уменьшении громкости на клавиатуре, оно просто меняет, какое сочетание клавиш запускает стандартное действие увеличения / уменьшения громкости.

Я действительно хотел сделать следующее:

  1. Создайте совершенно новое действие, нажав кнопку "Добавить" в нижней части сочетаний клавиш.
  2. Назовите новое действие (я выбрал «Поднять громкость на 10% (до 150%)» и «Уменьшить громкость на 10% (до 150%)» для двух моих действий). РЕДАКТИРОВАТЬ: Оказывается, что команда на самом деле выходит за рамки только 150%, поэтому выбранное мной имя было неточным. Качество звука довольно быстро ухудшается после 150%, так что это своего рода практический предел.
  3. Установите новое действие (для меня это pactl set-sink-volume @DEFAULT_SINK@ +10% и pactl set-sink-volume @DEFAULT_SINK@ -10%)
  4. Нажмите Применить, чтобы создать новое действие
  5. Нажмите на столбец "Ярлык" для нового действия, и столбец изменится на «Новый ярлык ...».
  6. Нажмите любую клавишу, с которой хотите связать действие (для меня это означало поворот моей ручки громкости вверх / вниз), и это свяжет эту клавишу с новым действием

Если вы повторите вышеупомянутое для увеличения и уменьшения громкости, вы можете, наконец, сделать так, чтобы ваш регулятор громкости увеличил громкость до «150%» ... или запустил любое другое действие с помощью регулятора громкости (или любой другой клавиши)!

PS Есть обратная сторона переключения ручки громкости на новую команду: она не показывает наложение громкости. По этой причине я обнаружил, что лучше оставить ручку регулировки громкости на привязке по умолчанию, а вместо этого связать SHIFT + *Volume Up/Down* с командой. Это позволило мне использовать регулятор громкости в обычном режиме, когда я хотел увеличить громкость до 100%, а затем, когда я действительно хочу "раскрутить", я могу просто удерживать нажатой клавишу Shift.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .