Добавить в корзинуПозвонить
Найти в Дзене

Назначение операций на дополнительные кнопки мыши (Linux Wayland)

Пришла мне в голову гениальная мысль «забиндить» операции копировать-вставить на две дополнительные кнопки у моей ZET GAMING Prime и казалось бы, что могло пойти не так? Конечно же оказалось в X11 этот вопрос решается элементарно, а вот в Wayland … «Хьюстон у нас проблемы». Полная статья в блоге: https://interlan.xyz/2026/04/09/naznachenie-operacij-na-dopolnitelnye-knopki-myshi-linux-wayland/ Сразу оговоримся, что все операции будут проводиться применительно к Kubuntu Linux и конкретно к мышке на картинке выше, но в реальности все применимо к любому дистрибутиву где графика на «вяленом». Если следовать логике нормальных людей, то нам достаточно перейти «Система» -> «Параметры системы» -> «Мышь» -> «Настроить дополнительные кнопки». Увы, это все конечно работает, но работает только в режиме X11, а вот в режиме Wayland (не потому что Wayland это стильно и молодежно) так уже не работает. Этот казус по старой Linux традиции привело меня к поиску альтернатив и как оказалось не напрасно. Офи
Оглавление

Пришла мне в голову гениальная мысль «забиндить» операции копировать-вставить на две дополнительные кнопки у моей ZET GAMING Prime и казалось бы, что могло пойти не так? Конечно же оказалось в X11 этот вопрос решается элементарно, а вот в Wayland … «Хьюстон у нас проблемы».

Полная статья в блоге: https://interlan.xyz/2026/04/09/naznachenie-operacij-na-dopolnitelnye-knopki-myshi-linux-wayland/

Преамбула

Сразу оговоримся, что все операции будут проводиться применительно к Kubuntu Linux и конкретно к мышке на картинке выше, но в реальности все применимо к любому дистрибутиву где графика на «вяленом».

Если следовать логике нормальных людей, то нам достаточно перейти «Система» -> «Параметры системы» -> «Мышь» -> «Настроить дополнительные кнопки».

-2

Увы, это все конечно работает, но работает только в режиме X11, а вот в режиме Wayland (не потому что Wayland это стильно и молодежно) так уже не работает. Этот казус по старой Linux традиции привело меня к поиску альтернатив и как оказалось не напрасно.

Утилита Input Remaper (работает как для Wayland так и для X11)

Официальный сайт на GitHub находится по адресу https://github.com/sezanzeb/input-remapper. Сразу скажу, что функционал утилиты выходит далеко за рамки моей задачи «повесить» копипасту на дополнительные кнопки мыши.

Input Remapper — это мощный инструмент для Linux, позволяющий переназначать поведение любых устройств ввода (клавиатур, мышей, джойстиков, педалей и т.д.). С его помощью можно создавать сложные макросы, комбинации клавиш, эмулировать движения мыши и многое другое. Сейчас я подробно расскажу, как установить и настроить утилиту, а также приведу конкретный пример назначения функций копировать (Ctrl+Insert) и вставить (Shift+Insert) на дополнительные кнопки компьютерной мыши. Естественно, вашем случае комбинации клавиш для копировать-вставить могут отличаться.

Установка Input Remaper

Самый простой способ — установить пакет из репозитория вашего дистрибутива (если он есть). Для Ubuntu/Debian он есть и установка производится одной командой.

# apt install input-remapper

Или из графического интерфейса Discover.

Запуск графического интерфейса

Запустите программу из меню приложений (обычно называется Input Remapper) или из терминала.

$ input-remapper-gtk

-3

При первом запуске потребуется ввести пароль sudo, потому что утилите нужны права на чтение событий из /dev/input/.

-4

Интерфейс состоит из трёх основных страниц:

  1. Devices — выбор устройства (ваша мышь).
  2. Presets — создание и управление наборами правил (пресетами).
  3. Mapping — добавление и редактирование конкретных правил.
-5

Определение кнопок мыши

Дополнительные кнопки мыши (например, боковые кнопки «вперёд»/«назад») в системе могут иметь следующие имена:

  • BTN_SIDE (часто боковая кнопка, ближняя к большому пальцу),
  • BTN_EXTRA,
  • BTN_FORWARD, BTN_BACK,
  • BTN_0, BTN_1 и т.д.
-6

Чтобы точно узнать, какой код соответствует вашей кнопке:

  1. В интерфейсе Input Remapper выберите вашу мышь на странице Devices.
  2. Перейдите на страницу Mapping.
  3. Нажмите кнопку Record и нажмите нужную кнопку мыши. В поле Input появится её имя (например, BTN_SIDE).

Создание пресета для мыши

  1. На странице Devices выберите вашу мышь.
  2. Перейдите на страницу Presets.
  3. Нажмите «+» (Create new preset), введите имя, например Mouse Copy/Paste.
  4. Новый пресет появится в списке. Выберите его, чтобы начать редактирование.
-7

Добавление правила для копирования (Ctrl+Insert)

Предположим, вы хотите назначить боковую кнопку BTN_SIDE на комбинацию Ctrl+Insert.

  1. На странице Mapping нажмите «+» (Add mapping).
  2. В поле Input нажмите Record и нажмите боковую кнопку мыши (появится, например, BTN_SIDE).
  3. В поле Output введите: Control_L + Insert (Это означает: зажать левый Ctrl и нажать Insert).
  4. Нажмите Enter (поле превратится в многострочный редактор, но можно оставить как есть).
  5. Измените имя правила (опционально), например «Copy».
-8

Добавление правила для вставки (Shift+Insert)

Аналогично создайте второе правило, например для кнопки BTN_EXTRA (или другой свободной кнопки).

-9

Теперь у вас должно быть два правила в пресете.

Применение пресета

  1. Убедитесь, что пресет выбран в списке на странице Presets.
  2. Нажмите кнопку Apply (в верхней части окна). Это активирует все правила пресета для выбранного устройства.
  3. Теперь нажмите боковые кнопки мыши — должны выполняться действия копирования и вставки в активном окне.
Важно: Если вы хотите изменить уже записанный ввод, сначала нажмите кнопку Stop, иначе программа не сможет считать исходные события мыши.
Важно: Если вы хотите изменить уже записанный ввод, сначала нажмите кнопку Stop, иначе программа не сможет считать исходные события мыши.

Дополнительные настройки и советы

Автозагрузка пресета

Чтобы пресет автоматически применялся при подключении мыши, на странице Presets включите переключатель Autoload рядом с именем пресета.

Отладка

Если что-то не работает, запустите графический интерфейс с выводом отладочной информации. Логи помогут понять, какие события генерируются и как они обрабатываются.

$ input-remapper-gtk -d

Отключение кнопки

Если вы хотите полностью отключить какую-либо кнопку (чтобы она ничего не делала), в поле Output введите disable.

Использование нескольких модификаторов

Можно создавать сложные комбинации, например Control_L + Shift_L + v (вставить без форматирования).

Просто перечислите их через «+».

Control_L + Shift_L + v

Пример готового пресета (конфигурационный файл)

Если вы предпочитаете редактировать конфигурацию вручную, пресет сохраняется в файле ~/.config/input-remapper-2/presets/<имя_устройства>/<имя_пресета>.json.

Пример содержимого для нашего пресета (имена кнопок могут отличаться).

[
{
"input_combination": [
{"type": 1, "code": 275}
],
"target_uinput": "keyboard",
"output_symbol": "Control_L + c"
},
{
"input_combination": [
{"type": 1, "code": 276}
],
"target_uinput": "keyboard",
"output_symbol": "Control_L + v"
}
]

Input Remapper предоставляет гибкий и удобный способ кастомизации устройств ввода в Linux. С его помощью вы можете не только назначать кнопкам мыши действия копирования/вставки, но и создавать сложные макросы, комбинации клавиш, эмулировать движения мыши и многое другое.