На моем ноутбуке клавиши Alt
и Windows
находятся в противоположных позициях, которые я бы предпочел. Поменять их местами довольно легко. Однако на моей внешней (USB) клавиатуре клавиши Alt
и расположены Windows
в том порядке, который мне нравится, то есть, когда я переключаюсь на внешнюю клавиатуру, у меня нежелательное расположение клавиш.
Есть ли какой-то способ Linux-y voodoo, который я могу использовать, чтобы определить, поступает ли ввод с внешней клавиатуры или нет, и заставить его поменять местами две клавиши соответствующим образом? Если это слишком, я бы согласился на способ определения того, когда подключена внешняя клавиатура. Или есть какие-то другие разумные решения, которые я не рассматривал?
решение1
Вы можете иметь совершенно разные настройки раскладки для каждой подключенной клавиатуры;Ненадежное руководство по настройке xkbможет быть полезным. В вашем случае, вы могли бы обойтись "Делать это легким способом" там.
Однако учтите, что руководство было написано в то время, когда X-сервер имел файл конфигурации, который был принят. С тех пор конфигурация клавиатуры переместилась по крайней мере в HAL и обратно, так что бог знает, куда вам придется деть свои излишки, Options "XkbOptions" "..."
когда сейчас новолуние.
Если все остальное не помогло и ваша X достаточно новая, то да, получите номер устройства xinput list
и вызовите setxkbmap -device ... ...
, вызовите его в файле запуска X и, возможно, также посмотрите , udev
чтобы получать уведомления при подключении этой клавиатуры.
решение2
Вы можете использовать xinput list
для проверки наличия внешней клавиатуры.