Так что я сижу в нашей гостиной на ноутбуке Ubuntu и работаю, а также смотрю телевизор, которым управляет Ubuntu HTPC. У меня настроен ИК-пульт и я могу контролировать все, что мне нужно, в 99% случаев.
Однако ввод текста на пульте не очень прост. Мне не нужно делать это очень часто, но когда я это делаю, мне легче пройти 15 футов, чтобы подключить USB-клавиатуру и сделать это таким образом. Однако ... Я уголовно и медицински ленив и чувствую, что ходить на любом расстоянии не просто ненужно, это показывает, что они выиграли роботов. Больше ничего не говорю!
Я могу нормально использовать SSH в HTPC ... Теперь, как мне отправить нажатия клавиш на сеанс X этого удаленного компьютера?
Я должен упомянуть, что я знаю, что могу использовать VNC но телевизор - 1080p, а ноутбук - 720p, поэтому возникают проблемы с масштабированием. На техническом уровне я бы предпочел решение, которое дало бы мне возможность временно превратить ноутбук в удаленную клавиатуру.
Используя x2x
и некоторую пересылку X11, я заставил это работать.
ssh -X htpc x2x -to :0
Единственным недостатком в настоящее время является то, что мне пришлось столкнуться с TTY, чтобы убить SSH, чтобы выйти из него. Все еще смотрю, как бросить курить, когда я закончу! В противном случае, это довольно приятный и простой (и ярлык) метод для передачи ввода с одного компьютера на другой.
Редактировать: добавление -nomouse
дало мне возможность закрыть перенаправленное окно x2x
, и я могу расфокусировать его, чтобы быстро вернуться к другим вещам без необходимости прерывать соединение.
Вы должны быть в состоянии сделать это, используя команду xdotool
, после указания соответствующего дисплея X, например, для имитации одиночного нажатия кнопки «стрелка вниз» в текущем активном окне
$ DISPLAY=:0 xdotool getactivewindow key Down
Для ввода буквенного текста можно использовать xdotool type <string>
, например
$ DISPLAY=:0 xdotool getactivewindow type 'your text here'
Пакет xdotool
должен быть доступен в репозитории Universe.