Questão linux pode enviar a tecla fn e desativar o touchpad?


Estou usando um laptop com Ubuntu 12.04 e quero enviar um Fn+F8 de um script para desativar meu touchpad.

Quando eu digito o comando xdotool key fn, imprime

(symbol) No such key name 'fn'. Ignoring it.
(symbol) No such key name 'fn'. Ignoring it.

Como posso enviar a tecla Fn?

---------------------------- atualização 13 de junho ------------------- ---------------

Então o Fn chave não pode ser enviada via linguagem do programa? Olhando para /usr/include/linux/input.h linha 614, vejo:

#define KEY_FN 0x1d0

também não funciona enviando sinal? Ou não é o código-chave da Fn?

---------------------------- atualização 26 de junho ------------------- ---------------

em rencently, eu fiz algum teste sobre Fn+F8 usando C. Eu gato /dev/input/event3 e pode ver o Fn+F8 código é 240 qual é

#define KEY_UNKNOWN     240

e algum outro código. Estou me sentindo triste. Talvez o touchpad seja manuseado diretamente pelo hardware como o user49740 disse.

mas o comando pode desativar o touchpad pelo sistema operacional

xinput set-prop 'ETPS/2 Elantech Touchpad' 'Device Enabled' 0

no entanto, não pode alterar o status da luz do touchpad. E a Fn+F8 não é possível ativar ou desativar o touchpad.


4


origem




Respostas:


Pressionando o Fn chave não envia nenhum código de tecla para o sistema operacional, portanto, você não pode fingir pressionando o Fn chave.

No entanto, alguns Fn+outra chave combinações enviam códigos de tecla. Por exemplo, os combos de tecla play / pause / next / prev sempre enviam códigos de tecla

De um terminal, você pode executar o xev programa, que abre uma janela simples. Agora você pode pressionar várias teclas e combinações de teclas e os códigos recebidos X11 será mostrado no terminal. Você pode pressionar Fn+F8 e veja se xev mostra qualquer saída

Infelizmente, na maioria dos laptops, a combinação de teclas 'desativar touchpad' é manuseada diretamente pelo hardware, portanto você deve encontrar outra maneira de desativar o touchpad.

Se você estiver usando um touchpad Synaptics, você deve olhar sincliente ou syndaemon. Por exemplo, Este artigo diz que synclient TouchpadOff=1 desliga o touchpad e synclient TouchpadOff=0 liga


3





Não. Fn chave é tratada pelo hardware, não pelo sistema operacional.


7



então, a tecla Fn não funciona usando a linguagem do programa? somente por hardware? Mas vejo código-fonte C ++ na linha 614 em /linux/input.h. #define KEY_FN 0x1d0 também não funciona enviando sinal? Ou não é o código-chave da Fn? - Cyd
Então, como é que o Fn-F8 não funciona com o Linux, no meu laptop? - Camion