Двойное нажатие клавиши ScrollLock не приводит к смене целевого компьютера KVM

Двойное нажатие клавиши ScrollLock не приводит к смене целевого компьютера KVM

Используя переключатель Belkin KVM. Обычно я могу дважды нажать scroll-lock и выбрать номер, соответствующий машине, на которую я хочу переключиться, однако с тех пор, как я обновился с 12.10 до 13.04 Beta 2, двойное нажатие scroll-lock больше не переключает машины.

Я предполагал, что это «двойное нажатие» жестко запрограммировано в блоке KVM и должновсегдаработа, но, похоже, я ошибался.

Есть у кого-нибудь идеи? KVM — это Belkin 2-портовый 1DL102P (со встроенными кабелями и поддержкой звука), и на самом устройстве нет никаких кнопок, поэтому нет кнопок «ручного управления» или «жесткого сброса».

Выглядит так:

Belkin 2-портовый 1DL102P

Есть мысли, идеи или предложения? Это какой-то глюк с привязкой клавиш?

решение1

Переключается ли он при вызове этого скрипта?

#!/bin/bash
SLEEP=0.2
LEDMASK=4
LEDNAME="Scroll Lock"

xmessage -timeout 1 "Switching..." &

STATE="$(( $(xset q | awk '/LED/ {print $10}') & LEDMASK ))"

test $STATE -eq $LEDMASK && xset -led named "$LEDNAME" && sleep $SLEEP
xset led named "$LEDNAME"  
sleep $SLEEP
xset -led named "$LEDNAME" 
sleep $SLEEP
xset led named "$LEDNAME"  
test $STATE -ne $LEDMASK && sleep $SLEEP && xset -led named "$LEDNAME"

решение2

Хорошо, похоже, что отключение адаптеров клавиатуры/мыши KVM от обоих компьютеров и их повторное подключение послужило своего рода «жестким сбросом», поскольку теперь все снова работает.

Поскольку данное устройство получает питание от портов PS2, а не от адаптера переменного тока, отсоединение кабелей PS2 решило проблему.

решение3

Ответ uli42 был ключевым, когда он работал на моем Syba KVM. KVM не слушает сигнал «нажатие клавиши» с клавиатуры на ПК, а сигнал «установка светодиода» с ПК на клавиатуру... вероятно, чтобы он мог использовать поддержку ОС для всех видов различных раскладок клавиатуры и Just Work™, если опытный пользователь, купивший KVM, настроил свою раскладку клавиатуры.

Черт возьми, в руководстве к моему Syba KVM сказано, что эта функция «работает только в Windows», и, оглядываясь назад, я понимаю, что это было важной подсказкой.

(В macOS нет концепции Scroll Lock, и она не переключает светодиод, а конфигурация клавиатуры X11 по умолчанию оставляет Scroll Lock неактивной уже давно.)

Повторное добавление привязки с помощью чего-то вроде этого xmodmap -e 'add mod3 = Scroll_Lock'заставит его работать в X11 так же, как в Windows.

(У меня нет времени это проверить, но я полагаю, что вы могли бы заставить ту же мышечную память работать на любом Mac, написав какой-нибудь скрипт для переключения светодиода блокировки прокрутки, а затем привязав его к F14.)

Клавиатура Apple и альтернативная клавиша с изображением клавиш «Scroll Lock» и F14

Что касается Wayland, спросите разработчиков вашего конкретного DE. В последний раз, когда я этим интересовался, автор libinput оставлял разработку собственных решений, эквивалентных командам , и т. д., на усмотрение каждого композитора xmodmapWayland setxkbmap.

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

#!/bin/sh
LEDNAME="Scroll Lock"

echo "Switching KVM..."
xset led named "$LEDNAME"
sleep 0.5
xset -led named "$LEDNAME"

Связанный контент