Почему существует задержка между нажатием клавиши и принятием?

Это одна из самых дурацких и странных проблем, с которыми я когда-либо сталкивался. Моя клавиатура работала совершенно нормально до вчерашнего дня на Ubuntu 13.04. Однако, когда я загружаюсь сегодня в Ubuntu, я вдруг обнаруживаю, что все клавиши работают, но мне приходится нажимать и удерживать их около секунды, чтобы они работали.

  • Такое поведение верно для всех клавиш, кроме клавиш Num Lock, Caps Lock и Scroll Lock, их индикатор на клавиатуре загорается, как только я нажимаю эти клавиши.

  • Клавиатура отлично работает на экране входа в систему, где я поставил свой пароль.

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

  • Я не делал никаких переназначений клавиш и не использовал стандартную раскладку клавиатуры на английском (США).

  • Я возился с настройками клавиатуры в системных настройках, но безрезультатно.

  • У меня Windows 7 в качестве двойной загрузки, и клавиатура на нем прекрасно работает.

Почему я сталкиваюсь с таким поведением и как это нормализовать?

PS: использование Logitech Classic Keyboard K100 (модель USB).

11 ответов

Решение

Потому что, вероятно, вы включили опцию Slow Keys в Системные настройкиУниверсальный доступПечатание. Выключи:

медленные клавиши

У меня была похожая проблема. Я наткнулся на ответ, пытаясь найти решение здесь. Каким-то образом программа чтения с экрана была включена и вызывала странное поведение. Проверьте это в Системных настройках → Универсальный доступ → Просмотр. Убедитесь, что для Screen Reader установлено значение OFF. Программа чтения с экрана выключена

Ubuntu, очевидно, отразил функцию "медленных клавиш" в Windows, и по умолчанию настроил это так, что он включается, если удерживать клавишу Shift в течение слишком долгого времени, автоматически включает эту настройку!

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

Принятый ответ больше не работает в последней версии Ubuntu, больше нет опции "Slow Keys" в gnome-control-center,

Единственный способ надежно отключить это - командная строка:

# Get current value of keyboard accessibility (enabled = true , disabled = false)
gsettings get org.gnome.desktop.a11y.keyboard enable
# Get current value of slowkeys-enable
gsettings get org.gnome.desktop.a11y.keyboard slowkeys-enable
# Turn it off!
gsettings set org.gnome.desktop.a11y.keyboard slowkeys-enable false

# Get current value of stickykey-enable
gsettings get org.gnome.desktop.a11y.keyboard stickykeys-enable
# Turn it off!
gsettings set org.gnome.desktop.a11y.keyboard stickykeys-enable false
# Finally, turn the entire keyboard accessibility options off (this should disable the SHIFT key shortcuts)
gsettings get org.gnome.desktop.a11y.keyboard enable false

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

Надеюсь, это поможет... Удачи!

Проблема этой недопустимой задержки при вводе текста также может иметь совершенно иную причину, чем те, что были указаны здесь ранее (Sticky Keys), и я нашел это:

По ошибке у меня была включена опция "Экранная лупа" (Опции доступности). - И, чувак, эта штука замедляет обмен текстовыми сообщениями, если вы используете нетбук с низкой спецификацией, как я (ASUS X206HA)... сделал меня наполовину безумцем - Но по чистой случайности я наконец узнал об этом, выключил лупу, и все снова стало быстрым и плавным.

TL&DR: включите программу чтения с экрана с помощью параметров универсального доступа в Ubuntu 20.04+.

Инструкции:

  1. Откройте обзор действий и начните вводить «Специальные возможности».

  2. Щелкните Универсальный доступ , чтобы открыть меню.

  3. Нажмите «Чтение экрана» в разделе « Просмотр », затем включите «Чтение экрана» в диалоговом окне.

Объяснение: Функция чтения с экрана предназначена для тех, у кого проблемы с чтением или слабовидящие. Было показано, что это вызывает задержки при нажатии на клавиатуру.

После долгого устранения неполадок и перепробования всех других решений я нашел одну из возможных проблем: оконный менеджер Compton. Я подозреваю, что многие другие видят то же самое, что и это, и я еще не видел это решение в Интернете.

Если вы используетеxfce(например, XFCE) (или любой другой рабочий стол, использующийcompton), попробуйте отключить Compton.

В Минте это:Mint button>Session and Startup>Application Autostartвкладка > снять флажокWindow Manager (Window Manager Startup)

Если вы наведете указатель мыши на эту опцию, вы увидите, что — по крайней мере, для xfce — команда для этогоxfce-autostart-wm. Этот файл находится по адресу/usr/bin/xfce-autostart-wmи оказывается скриптом Python.

В этом сценарии команда выполняется, если ваш оконный менеджер Compton.

Чтобы увидеть, какой у вас настроен менеджер Compton, запуститеpython3и делать:

      import sys
import os
import gettext
import subprocess
import gi
from gi.repository import Gio
settings = Gio.Settings("com.linuxmint.desktop")
print(settings.get_string("xfce-window-manager"))

то есть

      /usr/bin$ python3
Python 3
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> import os
>>> import gettext
>>> import subprocess
>>> import gi
>>> from gi.repository import Gio
>>> settings = Gio.Settings("com.linuxmint.desktop")
>>> print(settings.get_string("xfce-window-manager"))
xfwm4-compton

Как только я началcompton --backend glx --vsync opengl-swcсразу же начинает происходить проблема с задержкой ключа.

Отключите Compton и посмотрите, как у вас пойдет. Если вы используете XFCE, следующее обновление скрипта (sudo vi /usr/bin/xfce-autostart-wm) может быть достаточно:

          #subprocess.Popen(["compton", "--backend", "glx", "--vsync", "opengl-swc"])
    subprocess.Popen(["compton", "--backend", "glx", "--vsync", "opengl-swc", "--xrender-sync", "--xrender-sync-fence"])

Около строки 33.

Ошибка здесь: https://github.com/chjj/compton/issues/255

Есть еще одна причина задержки при переключении раскладки клавиатуры. В соответствии с проблемой № 1370953№ 1370953) такое поведение может быть связано с низкой производительностью диска. Смотрите комментарий Максима Кравца:

Каждое изменение макета чередуется ~/.config/dconf/ пользовательский файл. Изменение формата происходит медленно, когда диск занят.

Есть одна вещь (не только одна), чтобы перешагнуть через проблему с диском - изменить планировщик очереди диска. По умолчанию Ubuntu настроен на использование планировщика дедлайнов, для медленных жестких дисков лучше использовать планировщик cfq.

Смотрите инструкцию.

Это может произойти, когда есть программа-демон, ловящая нажатия клавиш (как на борту). В качестве пробной версии откройте gnome-system-monitorи посмотрите, работает ли какой-нибудь скрипт bash или даже скрипт python. Попробуйте закрыть на борту, если он работает.

Я знаю, что то, что я порекомендую, является почти самым простым и уродливым решением:

Переместить .* каталоги куда-то еще:

mkdir ~/backup
mv ~/.config ~/.dbus ~/.gconf ~/backup/

Теперь перезапустите сеанс. Проблема должна была уйти. Если проблема исчезнет, ​​вы можете восстановить одного за другим невинного с помощью

cp -nr ~/backup/.dbus ~/.dbus

Перезапустите сеанс, проблема есть снова? Удалите каталог и скопируйте одно за другим содержимое подкаталогов. То же самое с двумя другими каталогами.

cp -nr ~/backup/.config ~/.config
cp -nr ~/backup/.gconf ~/.gconf

Я знаю, что это довольно грубый метод, но так как я не смог найти точный файл /dconf/gconf/xinput, который мог бы вызвать это, небольшого быстрого взлома должно быть достаточно.

Как описано в вопросе, на экране входа в систему у меня не было задержки, но в диспетчере окон (удивительный wm), было нерегулярное отставание клавиатуры (иногда короткая / длинная задержка). Ранее я поместил следующий код в /etc/X11/xorg.conf

Section "Device"
Identifier  "Card0"
Driver      "intel"
Option      "Backlight"  "/sys/class/backlight"
EndSection

делать xbacklight Работа. Оказалось, что приведенные выше строки вызвали задержку клавиатуры в моем случае.

Другие вопросы по тегам