Tento descobrir uma maneira de torná-lo permanente:
Eu sei que esse é o firefox
comportamento padrão. Não tenho ideia de como ele é implementado.
Como fazer isso?
Posso testar atalhos de teclado e alguns kill
comandos com um script e saber qual sinal é capturado trap
?
Eu uso o Debian 9 (também conhecido como 'Stretch') x86_64.
$ uname -a:
Linux mypc 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux
Tentei mapear meu botão extra do meu dispositivo, Logitech MU-007:
$ lsusb | grep Logitech
Bus 001 Device 023: ID 046d:c069 Logitech, Inc. M-U0007 [Corded Mouse M500]
dispositivo de entrada:
$ xinput | grep Logitech
⎜ ↳ Logitech USB Laser Mouse id=10 [slave pointer (2)]
Teste de botões extras com xinput test 10
retorno 8 e 9 para os dois botões do lado esquerdo dos mouses.
$ xinput -version
xinput version 1.6.2
Tentei um simples:
xinput set-button-map 10 8 2 3
ou
$ xmodmap -e "pointer = 9 2 3"
Warning: Only changing the first 3 of 12 buttons.
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 116 (X_SetPointerMapping)
Value in failed request: 0x9
Serial number of failed request: 9
Current serial number in output stream:
Os botões esquerdos não funcionam, não pode selecionar com aqueles como clique esquerdo.
Eu gostaria de manter o botão esquerdo E os botões extras como clique esquerdo também.
Alguma idéia de por que o xinput
comando não selecionou nada?
Finalmente:
id=$(xinput list | grep -oP 'Logitech USB Laser Mouse.*id=\K\d+')
xinput set-button-map $id 1 2 3 4 5 6 7 1 1 10 11 12
Eu tenho um projeto que precisa detectar a variável DISPLAY
in shell ( bash ) para poder exibir algumas coisas da GUI na máquina local.
Ou uma solução melhor ( dbus ?) Para abrir coisas de gui em shell não interativo sem tentar descobrir DISPLAY
e XAUTHORITY
.
Posso definir, DISPLAY=:0
mas isso falhará se um usuário usar outra sessão.
Como não estou no modo interativo, o que tentei (funciona bem, mas apenas como root) é:
strings /proc/$(pidof Xorg)/environ | grep -Eo 'DISPLAY=:[0-9]+(:[0-9])*'
ou como usuário:
ps uww $(pidof Xorg) | grep -oE '[[:blank:]]:[0-9]+(:[0-9])*\b'
Mas não sei se é confiável em algum Linux (Unixes?)
Existe uma maneira mais confiável/portátil?
Desde =~ 2 anos, parece que não podemos usar a Supertecla (também conhecida como tecla do Windows) para executar alguns atalhos de teclado.
Eu tento com kde, gnome, xfce4, nenhum funciona totalmente.
Por exemplo, eu tenho um atalho de teclado para digitar a data como se eu digitasse atribuído via Super+ a, quando eu bato nessas teclas, nada acontece.
A linha de comando está bash -c 'xvkbd -xsendevent -text $(date +%Y%m%d)'
configurada corretamente nas preferências do xfce4.
Atualmente uso archlinux x86_64, com kernel 4.15.1-2-ARCH.
Alguém sabe o que há de errado? Onde ? Existe uma correção? Uma solução alternativa?