Opções de layout de teclado do Gnome Tweak Tools - definidas apenas para teclado Bluetooth?

Opções de layout de teclado do Gnome Tweak Tools - definidas apenas para teclado Bluetooth?

Tenho esta configuração útil habilitada no Tweak Tools quando uso um irritante teclado mágico externo da Apple:

insira a descrição da imagem aqui

Essa configuração faz com que o teclado funcione normalmente, na minha opinião (a supertecla está à direita da tecla de controle).

No entanto, essa configuração na ferramenta de ajuste também afeta o mapa de teclado do meu laptop. De alguma forma, posso fazer essa configuração apenas para este irritante teclado mágico externo da Apple?

Responder1

Você poderia usar xkbcomp, e o processo detalhado é descritoaqui. Você tem que encontrar os códigos para as chaves serem remapeadas. Outras respostas no mesmo OP podem ser úteis.

xkeycapspode ser útil.

Relacionado>

  1. Como faço para remapear determinadas chaves ou dispositivos?
  2. https://dev.to/0xbf/remap-keys-in-the-keyboard-in-ubuntu-5a36
  3. http://www.fascinatingcaptain.com/projects/remap-keyboard-keys-for-ubuntu/
  4. (Em comentário de Pablo Bianchi)https://superuser.com/questions/277990/how-do-i-swap-alt-and-windows-keys-with-xmodmap
  5. (Em comentário de Pablo Bianchi)https://unix.stackexchange.com/questions/86933/swap-alt-and-super

Responder2

Isso, como um todo, é uma resposta #!^, devido à sua falta de integridade, mas eu apenas atribuiria a opção de troca de teclas ao teclado específico com setxkbmap.

xinputlhe dará o id do seu teclado

wutang@shaolin:~$ xinput

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ VirtualBox mouse integration              id=9    [slave  pointer  (2)]
⎜   ↳ VirtualBox USB Tablet                     id=10   [slave  pointer  (2)]
⎜   ↳ ImExPS/2 Generic Explorer Mouse           id=12   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Sleep Button                              id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]

divulgação completa, estou sendo extremamente preguiçoso e não atrapalhando meu virtual para passar no segundo teclado que testei, e ainda mais preguiçoso por não configurar para recortar e colar do host (--> VM) que realmente mostra os 2 teclados. .(s#!^ resposta)
então você só precisa imaginar que há um segundo teclado na minha saída com um ID exclusivo

Se vou alterar apenas um dos meus teclados (teclado AT Translated Set 2):
setxkbmap -device 11 -option altwin:swap_lalt_lwin

Vou presumir que isso não é permanente; provavelmente desaparece se você desconectar o teclado, sair ou desligar.

O sinalizador -option sem fornecer uma opção remove todas as opções.

Responder3

Acontece que meu colega de trabalho teve o mesmo problema. Com sua permissão, aqui está a solução que funcionou imediatamente:

Primeiro execute isso e vá até as informações sobre o teclado Executarcat /proc/bus/input/devices | less

I: Bus=0005 Vendor=004c Product=026c Version=0160
N: Name="Magic Keyboard with Numeric Keypad"
P: Phys=44:e5:17:96:76:24
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-10/3-10:1.0/bluetooth/hci0/hci0:256/0005:004C:026C.0007/input/input38
U: Uniq=c4:14:11:03:c2:de
H: Handlers=sysrq kbd event20 leds 
B: PROP=0
B: EV=120013
B: KEY=10000 0 0 1 1007b00001007 ff9f207ac14057ff ffbeffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=1f

Agora construa um id desta forma:

evdev:input:b<bus_id>v<vendor_id>p<product_id>e<version_id>-<modalias>

Onde a versão e as modalidades não importam. Eu entendi isso:

evdev:input:b0005v004Cp026C*

Em seguida, crie este arquivo

etc/udev/hwdb.d/60-applekeyboard.hwdb

Não acho que o nome importe, mas não tenho certeza.

O arquivo deve conter o ID que acabamos de criar e o remapeamento das chaves:

# Apple magic
evdev:input:b0005v004Cp026C*
 KEYBOARD_KEY_700e2=leftmeta
 KEYBOARD_KEY_700e3=leftalt

Como você encontra os nomes? basta executar, sudo evtestencontrar seu teclado e pressionar a tecla que deseja alterar. A saída é semelhante a esta:

Event: time 1644400418.762658, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e3
Event: time 1644400418.762658, type 1 (EV_KEY), code 56 (KEY_LEFTMETA), value 1

Use essa saída para construir a chave desejada e alterá-la.

Em seguida, sudo execute estes comandos para atualizar:

systemd-hwdb update
udevadm control --reload-rules
udevadm trigger

Então você terminou.

informação relacionada