Клавиши управления курсором в Kali Linux продолжают двигаться, даже если кнопки стрелок влево/вправо на клавиатуре отпущены.

Вопрос или проблема

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

Я использую zsh и последнюю версию Kali (Kali 2024). Также я использую Gnome. Может быть, это проблема Gnome? (Виртуальная машина не облачная, так что никаких задержек от интернет-соединения; я также изменил настройки повторения (клавиши–>скорость повторения, клавиши–>задержка), но они предназначены для проблем с набором текста, а не для перемещения курсора).

Я исследовал это и очень близок к тому, чтобы разобраться, но мне нужна помощь. Я установил эти значения для Gnome для клавиш нампада 2, 4, 6, 8 (которые работают как стрелки, когда NumLock отключен). Эти кнопки, кажется, работают правильно при удерживании/отпускании. Скорость перемещения курсора нормальная, и когда я отпускаю клавиши, он сразу же останавливается, как и в любой другой системе. Проблема теперь в том, как передать те же значения для классических клавиш управления курсором, поскольку они не работают правильно.

gsettings set org.gnome.desktop.a11y.keyboard mousekeys-max-speed 2000;
gsettings set org.gnome.desktop.a11y.keyboard mousekeys-init-delay 20;
gsettings set org.gnome.desktop.a11y.keyboard mousekeys-accel-time 2000;
gsettings set org.gnome.desktop.a11y.keyboard mousekeys-enable true;

└─$ xset q                  
Keyboard Control:
  auto repeat:  on    key click percent:  0    LED mask:  00000002
  XKB indicators:
    00: Caps Lock:   off    01: Num Lock:    on     02: Scroll Lock: off
    03: Compose:     off    04: Kana:        off    05: Sleep:       off
    06: Suspend:     off    07: Mute:        off    08: Misc:        off
    09: Mail:        off    10: Charging:    off    11: Shift Lock:  off
    12: Group 2:     off    13: Mouse Keys:  off
  auto repeat delay:  600    repeat rate:  31
  auto repeating keys:  00ffffffdffffbbf
                        fadfffefffedffff
                        9fffffffffffffff
                        fff7ffffffffffff
  bell percent:  50    bell pitch:  400    bell duration:  100
Pointer Control:
  acceleration:  2/1    threshold:  4
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
Colors:
  default colormap:  0x20    BlackPixel:  0x0    WhitePixel:  0xffffff
Font Path:
  /usr/share/fonts/X11/misc,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,built-ins
DPMS (Display Power Management Signaling):
  Standby: 0    Suspend: 0    Off: 0
  DPMS включен
  Монитор включен


gsettings list-recursively org.gnome.desktop.peripherals.keyboard

org.gnome.desktop.peripherals.keyboard delay uint32 500
org.gnome.desktop.peripherals.keyboard numlock-state false
org.gnome.desktop.peripherals.keyboard remember-numlock-state true
org.gnome.desktop.peripherals.keyboard repeat true
org.gnome.desktop.peripherals.keyboard repeat-interval uint32 30

Это решило мою проблему, добавьте это в файл vmware .vmx

keyboard.allowBothIRQs = "FALSE"
keyboard.vusb.enable = "TRUE"

Ответ или решение

В описанной ситуации пользователь сталкивается с проблемой пролонгированного перемещения курсора при отпускании клавиш управления курсором (влево и вправо) в Kali Linux с оболочкой zsh и окружением рабочего стола Gnome на виртуальной машине. Рассмотрим это подробнее.

Теория

Проблема, описанная пользователем, связана с некорректной обработкой сигнала отпускания клавиш. Когда пользователь удерживает кнопку и затем отпускает ее, система продолжает обработку сигнала, как будто клавиша все еще нажата. Это может быть вызвано несколькими факторами:

  1. Конфигурация системы и драйверов: Некорректные настройки клавиатуры или драйверов могут привести к неправильной интерпретации событий нажатия и отпускания клавиш.

  2. Настройки повторения клавиш: Поведение, связанное с авто-повтором клавиш, может влиять на реакции куросора на перемещения. Стандартные параметры могут быть слишком высоки для комфортного использования.

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

Пример

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

Применение

Для устранения описанной проблемы, необходимо предпринять следующие шаги:

  1. Калибровка настроек клавиатуры:

    • Проверить и откорректировать настройки задержки (delay) и интервала повтора (repeat-interval) через gsettings.
    • Убедиться, что auto repeat (автоповтор) включен и имеет оптимальные значения. Например, delay может быть установлен в 600 мс, а repeat-interval в 30 мс, как это уже указано в xset q.
  2. Настройка VMWare:

    • Изменить конфигурацию виртуальной машины в файле .vmx, как предложено:
      keyboard.allowBothIRQs = "FALSE"
      keyboard.vusb.enable = "TRUE"

      Эти настройки позволяют переключить обработку прерываний клавиатуры и включить виртуальные USB клавиатуры, что может помочь в улучшении реакции системы на нажатия клавиш.

  3. Обновление системы и драйверов:

    • Убедиться, что все пакеты, связанные с управлением клавиатурой и устройствами ввода, актуальны.
    • Обновить виртуальные драйверы VMWare Tools, так как устаревшие версии могут приводить к несоответствиям в обработке устройств ввода.
  4. Тестирование альтернативных сред:

    • Если проблема сохраняется, попробовать переключиться на другую среду рабочего стола (например, XFCE или KDE), чтобы проверить, не связано ли это с GNOME.
  5. Обратная связь и логи:

    • Использовать dmesg или journalctl для проверки логов системы на предмет ошибок, связанных с устройствами ввода.
  6. Дополнительные утилиты и диагностика:

    • Использовать утилиту xinput для диагностики и изменения параметров ввода устройств. Это поможет более детально настроить поведение клавиатуры.

Каждое из предложенных изменений может способствовать решению проблемы или, по крайней мере, её сокращению. Важно последовательно тестировать влияние каждой настройки, чтобы избежать внесения конфликтов в существующую конфигурацию системы. При этом, использование обновленной версии системы и утилит управления, таких как xset и xinput, должно обеспечивать более точное управление устройствами ввода и быстродействие системы.

Оцените материал
Добавить комментарий

Капча загружается...