Tentei usar este tutorial para fazer a alternância de rolagem funcionar no Microsoft Natural Ergonomic Keyboard 4000. Mas enfrento o seguinte erro:
sudo: /lib/udev/keymap: command not found
Eu tenho a versão udev 204-5ubuntu20.2
(a versão encontrada em Trusty)
Notei que esta versão não inclui keymap
ferramenta. Mas noto que udev
versões maiores ( disponíveis para o Debian, por exemplo ) incluem essa ferramenta.
Alguém poderia explicar essa diferença para mim? =) E o que devo fazer neste caso - instalar o pacote do repositório Debian?
keymap
utilitário não enviado mais faz?Respostas:
Se você olhar,
/lib/udev/rules.d/60-keyboard.rules
verá que tudo foi mexido. Isso é apenas parte da fusão do udev com o systemd que ocorreu.Todas as regras de hardware são compiladas em um banco de dados de hardware binário. Eles seguem um formato realmente estranho. As regras existentes para teclados fornecidos com o udev estão em
/lib/udev/hwdb.d/60-keyboard.hwdb
. Veja isso, mas não o edite (as atualizações provavelmente o substituirão).Para adicionar suas regras personalizadas, criaremos um novo arquivo
/etc/udev/hwdb.d/
executandosudoedit /etc/udev/hwdb.d/61-keyboard-local.hwdb
. Tudo o que você precisa fazer é colar o seguinte -Se você estiver usando o modelo 4000:
Se você estiver usando o modelo 7000:
Isso é adaptado do tutorial que você postou, para que você possa precisar ajustar com base no seu teclado. Observe
lsusb
e verifique se ovendor:product
código acima (asv####p####
) está correto. Não funcionará se eles não corresponderem.Quando terminar de editar, recompile o
hwdb
que o udev usa:E então você pode precisar reconectá-lo. Se for um teclado PS / 2, talvez seja necessário reiniciar. Em alguns casos, você também precisa reiniciar.
fonte
hwdb.d
dir está vazio,rules.d
contém apenas três arquivos (70-persistent-cd.rules
,70-persistent-net.rules
,README
). Então, você quis dizer que devo criar um novo arquivo? Ou devo ter alguns para editar?/lib/udev/hwdb.d/60-keyboard.hwdb
mas as edições serão perdidas após as atualizações do udev.udevadm trigger /dev/input/by-id/usb-Microsoft-*
para acionar a atualizaçãoUbuntu 15.10 : Não obtive sucesso com respostas anteriores.
Usei com sucesso uma abordagem semelhante à anterior - as instruções foram mencionadas em
/lib/udev/hwdb.d/60-keyboard.hwdb
.Eu criei um novo arquivo hwdb usando o
sudo nano /etc/udev/hwdb.d/70-keyboard.hwdb
contendo:depois disso eu corri
e reconectou o teclado e funcionou.
Para o modelo 7000, use
evdev:input:b003v045Ep071D*
fonte
keyboard:
definições não funcionam mais no Ubuntu 1604 e precisam estarevdev:
. Existe até um mapeamento padrão/lib/udev/hwdb.d/60-keyboard.hwdb
para o modelo 4000 que os mapeia parazoomin
/zoomout
- no entanto, o X ignora completamente os eventos (o xev não mostra nada), portanto você ainda precisa de uma alteração na configuração como esta.b0003
olhares como específico-bus-lo de (por isso só pode funcionar em algumas portas USB). Se algo comob*v045Ep071D*
funciona, isso pode ser melhor.evdev:input:XXX
vez dekeyboard:usb:YYY
). Você também pode usar mapeamento diferente em vez depageup
/pagedown
. Por exemplo, estou usandoscrollup
escrolldown
para fazer rolagem real.A solução original postada por Oli não funcionou para mim, mas funciona depois que alterei os números das chaves
"0c022d"
e"0c022e"
para"c022d"
e"c022e"
. Estou usando um modelo 4000, então não posso verificar se a mesma alteração é necessária para o modelo 7000.Para repetir a resposta de Oli, aqui está o que eu fiz: crie um novo arquivo executando
sudo nano /etc/udev/hwdb.d/61-keyboard-local.hwdb
. Cole as seguintes linhas no arquivo (para o modelo 4000):Após editar o arquivo, recompile o hwdb que o udev usa:
Em seguida, reconecte o teclado.
fonte
Adicionando à resposta de Oli, se você quiser a rolagem de linhas como em um mouse, você pode modificar pageup / pagedown para cima / baixo em sua regra personalizada. Gostar:
fonte
A solução legal está aqui , e só posso acrescentar que você pode mapear as chaves para chaves X não utilizadas assim:
Os nomes adequados a serem usados em vez de
katakana
podem ser encontrados aqui .Após a reinicialização ;-), você pode testar se as chaves
zoomin
ezoomout
são mapeadas com sucesso e também para descobrir um nome adequado das chaves (para usar norc.xml
OpenBox WM, por exemplo) usandoxev
:Agora você pode conectar novas chaves a ações completamente arbitrárias. No meu caso do gerenciador de janelas OpenBox, usei algo como isto:
fonte