Vscode: Layout do teclado neo: algumas teclas pararam de funcionar

Criado em 6 abr. 2017  ·  28Comentários  ·  Fonte: microsoft/vscode

  • Versão do VSCode: Código 1.11.0 (9122ec4b1068bd391e41974f46a4b54c1b9c90f9, 2017-04-05T21: 13: 24.700Z)
  • Versão do sistema operacional: Linux x64 4.4.0-72-genérico

Passos para reproduzir:

  1. Instale e ative o layout do teclado Neo
  2. Abra qualquer arquivo de origem no código VS
  3. Coloque o cursor em algum lugar do arquivo
  4. Pressione a tecla M4 e segure. Pressione a tecla s (veja a imagem)
  5. Em vez de mover o cursor para a esquerda, nada acontece

Na versão anterior do VSCode (1.10.2 8076a19fdcab7e1fc1707952d652f0bb6c6db331) isso funcionou bem.

tastatur_e4b png

bug help wanted keyboard-layout linux

Comentários muito úteis

Preciso de algum tempo para entender esse layout de teclado. Entrarei em contato com você nos próximos dias, se tiver a gentileza de me ajudar. É diferente de tudo que já vi.

Solução alternativa para alternar o Código VS para despacho com base no código-chave novamente. Adicione a seguinte configuração:
"keyboard.dispatch": "keyCode" e reinicie o código VS

Todos 28 comentários

O mesmo problema para mim. Emita palavras-chave porque não encontrei esse problema no início: teclas de seta da camada 4 neo2 layout do teclado alemão.

Funcionou bem no 1.10, não funciona no 1.11.

O editor de atalhos no VSCode parece identificar a combinação destacada no teclado acima como [IntlBackslash] i

Não está quebrado no Windows e VSCode 1.11.0.
No entanto, o mapeamento de teclas é feito por autohotkey, que intercepta as teclas pressionadas e emite as suas próprias - AFAIK, isso é tratado de forma diferente no Linux.

Acabei de executar git bisect . A primeira confirmação incorreta parece ser https://github.com/Microsoft/vscode/commit/d10239639bf9beaa6ea34125319103de3dce43cd ( @alexandrudima )

# bad: [9122ec4b1068bd391e41974f46a4b54c1b9c90f9] Fix styling of release notes (fixes #23948)
# good: [8076a19fdcab7e1fc1707952d652f0bb6c6db331] debug: save all untitled non dirty files before debug start
git bisect start '1.11.0' '1.10.2'
# good: [40fecfaa77f01672e8a147be71f6f7ccb9cf8a12] fix mixin
git bisect good 40fecfaa77f01672e8a147be71f6f7ccb9cf8a12
# good: [9d2e0611f7f7750f02ec72c4d18a20b69c5bf8cf] #18095 :lipstick:
git bisect good 9d2e0611f7f7750f02ec72c4d18a20b69c5bf8cf
# bad: [7c223972367b8ade5362d738606f3b910d0fbb42] Fixes #19235: Wording in tasks warning message
git bisect bad 7c223972367b8ade5362d738606f3b910d0fbb42
# good: [378231183e815c8e8e6a73ad04fc40ec5058fdc5] Promise cancellation is slow. Use a timer instead since this may run many times.
git bisect good 378231183e815c8e8e6a73ad04fc40ec5058fdc5
# good: [f70b0b3ecb7f276c811b0f18c7a0bec3b03c11a6] Fixes #22069: Define extension story for tasks
git bisect good f70b0b3ecb7f276c811b0f18c7a0bec3b03c11a6
# bad: [4ad4bd0d8011a5db5e2bea4543b7efb03d482aad] :bug: add commit box message
git bisect bad 4ad4bd0d8011a5db5e2bea4543b7efb03d482aad
# bad: [9003dbc3f5f2b87cb3cc4a3418030dbdc45ac0a3] Add IKeybindingService.resolveUserBinding
git bisect bad 9003dbc3f5f2b87cb3cc4a3418030dbdc45ac0a3
# bad: [968da131589845b43c0d00141b41b2bb366a84e8] Improve the ScanCode -> KeyCode guessing strategy
git bisect bad 968da131589845b43c0d00141b41b2bb366a84e8
# bad: [969cbdfea05beda1a38d4082698b87f239fc2384] Renames
git bisect bad 969cbdfea05beda1a38d4082698b87f239fc2384
# bad: [8a33db65efdd3ed4c76d01cb76c3ef658caf16db] Add Inspect Key Mapppings action
git bisect bad 8a33db65efdd3ed4c76d01cb76c3ef658caf16db
# bad: [0ebecd5ca915ed33ea747cafe2c99572c52904b5] Merge branch 'master' into alex/keybinding
git bisect bad 0ebecd5ca915ed33ea747cafe2c99572c52904b5
# bad: [d10239639bf9beaa6ea34125319103de3dce43cd] First cut at integrating keyboard mappers
git bisect bad d10239639bf9beaa6ea34125319103de3dce43cd
# first bad commit: [d10239639bf9beaa6ea34125319103de3dce43cd] First cut at integrating keyboard mappers

Preciso de algum tempo para entender esse layout de teclado. Entrarei em contato com você nos próximos dias, se tiver a gentileza de me ajudar. É diferente de tudo que já vi.

Solução alternativa para alternar o Código VS para despacho com base no código-chave novamente. Adicione a seguinte configuração:
"keyboard.dispatch": "keyCode" e reinicie o código VS

Eu tenho o mesmo problema no Debian / Jessie.

https://github.com/Microsoft/vscode/issues/25797

Tenho problemas com o retrocesso.

Oi eu tenho o mesmo problema. Ontem, a solução alternativa funcionou para mim, mas hoje não está mais funcionando. Funciona por cerca de 2 segundos após a inicialização do editor, então minhas teclas básicas (letras) não funcionam mais. :pensando:
Não tenho certeza se fiz algo estúpido desde ontem, mas tem alguma ideia do por que pode ser?

@zommerfelds A primeira coisa que eu verificaria são os settings.json . O "keyboard.dispatch" duplicado lá, a configuração foi substituída por uma configuração de espaço de trabalho ao abrir uma pasta, etc.

A próxima coisa a se olhar é abrir um editor e executar F1 > Developer: Inspect key mappings . Ele imprime "FallbackKeyboardMapper despachando em keyCode" (um indicador de que a configuração foi aplicada).

Se isso não for um problema com as configurações, ou seja, a confirmação de que o despacho é feito em keyCode está lá, eu tentaria ver o que Electron / Chromium / o SO envia para nós quando você pressiona uma tecla específica : Passe o mouse sobre a caixa de entrada e faça uma captura de tela:
keyboard-input

Olá @alexandrudima , obrigado pela resposta detalhada.

cat ~/.config/Code/User/settings.json :

// Place your settings in this file to overwrite the default settings
{
    "keyboard.dispatch": "keyCode"
}

Se eu abrir o editor e for para _File => Preferences => Settings_, vejo o mesmo conteúdo para _USER SETTINGS_ como acima, e {} para _WORKSPACE SETTINGS_, então não tem problema.

_F1> Desenvolvedor: inspecionar mapeamentos de teclas_ fornece:

Layout info:
{
    "model": "pc105",
    "layout": "de,ch",
    "variant": "neo,",
    "options": "grp:menu_toggle",
    "rules": "evdev"
}
FallbackKeyboardMapper dispatching on keyCode

Raw mapping:
...

Para os atalhos de teclado, recebo:

Se eu quiser digitar "a":
image

Se eu quiser digitar "(":
image

O a foi impresso bem naquele pop-up, mas não no editor principal.

Em Neo, A é onde a chave D estaria em QWERTY, e ( é CapsLock+J em QUERTY.
Posso usar as teclas de seta na 4ª camada do Neo muito bem, mas não, por exemplo, os dígitos. Backspace funciona. Enter não funciona. Ctrl+Z funciona para desfazer (em Neo).

Além disso, como eu disse antes, tudo funciona nos primeiros segundos enquanto o Vscode está inicializando e depois para de funcionar.

Avise-me se puder ajudar de alguma outra forma. Seria ótimo se eu pudesse começar a usar o Vscode novamente :)

EDIT: para esclarecimento, acho que posso não ter o mesmo problema que o OP. Minhas teclas de setas na 4ª camada funcionam, mas não as teclas de letras simples e claras.

EDIT2: _Help => Sobre_:

Version 1.12.2
Commit 19222cdc84ce72202478ba1cec5cb557b71163de
Date 2017-05-10T13:16:25.899Z
Shell 1.6.6
Renderer 56.0.2924.87
Node 7.4.0

Obrigado @alexandrudima ! Alterar "keyboard.dispatch": "code" para "keyboard.dispatch": "keyCode" em File->Preferences->Settings me ajudou a fazer as teclas da camada m4 (tecla de escape, teclas de navegação, backspace, deletar, números) funcionarem.

Ainda não funciona para mim em 1.19.0 .
Também notei que a configuração keyboard.dispatch não faz diferença. Em qualquer configuração, as teclas de navegação e backspace, por exemplo, funcionam, mas não os dígitos e letras normais.
Existe uma maneira de verificar se o vscode está realmente carregando-o como keyCode e não voltando para code alguma forma?

Na verdade, acabei de fazer funcionar! A extensão NeoX estava bagunçando minhas configurações. Desativá-lo corrigiu o problema. Não tenho mais ideia de por que instalei essa extensão nem o que ela faz. Eu ainda tenho que definir keyboard.dispatch para keyCode para que funcione.
Desculpe por isso e obrigado pelo apoio. Sim, posso usar o vscode agora! :)

Acho que podemos encerrar esse problema então?

O problema ainda está presente no código VS atual:

  • Versão do código VS: Code 1.20.0 (c63189deaa8e620f650cc28792b8f5f3363f2c5b, 2018-02-07T17: 10: 15.949Z)
  • Versão do sistema operacional: Linux x64 4.13.0-32-genérico

Também tive problemas ao usar o Neo-Layout com VS Code 1.201 no Ubuntu 17.10 (Linux 4.13.0-36-genérico). Sem o switch "keyboad.dispatch": keyCode - eu era capaz de digitar com Neo2, mas não conseguia nem usar CTRL + C e CTRL + V, pois mapearia de volta para o layout padrão (acionando CTRL + R e CTRL + W, respectivamente )

bem, eu apenas tentei o "keyboard.dispatch" e ele me diz "definição de configuração desconhecida". Mas meus problemas são um pouco diferentes.

As teclas de seta funcionam bem, mas, por exemplo, a tecla desfazer não funciona. Quando pressiono M4+z o código do Visual Studio reconhece apenas z . E quando eu quero vincular algo a teclas como äöü, vscode traduz essas teclas se fosse um teclado americano. Portanto, Ctrl+ü é reconhecido como Ctrl+z . Isto é horrível.

Eu mapeio meu teclado com o programa XKB para usar o teclado dvorak modificado.

Eu uso a opção ralt_switch, que costumava mudar a tecla alt direita para funcionar como tecla meta ou modificador extra.
Eu habilito a configuração de keyCode no VSCode Insider.
Abaixo está o meu exemplo de configuração XKB

image

A RAlt (aka Meta key) + s reconhecida pelo VS como End chave. + Bom
mas quando eu deveria fazer ctrl+End key com Ctrl+RAlt (Meta)+s ele reconheceu como Ctrl+s que salvará o documento. -Ruim
Adivinhe o que aconteceu quando tentei pular algumas palavras pressionando Ctrl+Right aka Ctrl+RAlt (Meta)+n várias vezes.

Suponho que o modificador Ctrl não funciona bem com modificador extra (ou modificador keyCode-ed) como meta key ou Mod4.
Mesmo Ctrl+Shift+RAlt (Meta)+s também salva.
Mas Shift+Ralt (Meta)+s gosta de Shift+End que é +Good
Você pode simplesmente fazer ctrl se comportar como shift, em termos de combinação de modificadores?


Acho que é questão relacionada, mas com caso diferente.
_o título menciona o layout neo, este é custom_

isso está relacionado a este comentário resolvido?
usando o 'código' keyboard.dispatch, mas apenas para OSX. E eu apenas tentei, não funcionou no Linux Mint / Ubuntu
https://github.com/Microsoft/vscode/issues/12393#issuecomment -288994081

Estou no Linux.

Versão 1.21.1
Commit 79b44aa704ce542d8ca4a3cc44cfca566e7720f1
Datum 14/03/2018T14: 46: 30.761Z
Shell 1.7.9
Renderer 58.0.3029.110
Nó 7.9.0
Architektur x64

Infelizmente, a solução alternativa keyboard.dispatch parece não funcionar para mim também - pelo menos não é boa o suficiente. Posso usar o CapsLock (Mod3) reaproveitado para inserir símbolos de programadores como /,\,[,] e assim por diante dentro do editor, mas não em atalhos como shift+/ que se traduz em pressionar o botões físicos de shift+capslock+s

Tentar reatribuir atalhos com Mod3 mostra unknown

unknown_key

Parece que @sakasistem foi mencionado, parece haver problemas com uma certa sequência de teclas modificadoras.

Atalhos como shift+/ são totalmente BS e não deveriam existir.

Deve ser ? e deixar o layout decidir quais modificadores são necessários para digitar aquele caractere, ou um layout independente shift + scancode_slash . Na primeira opção, eu simplesmente digitaria? (não importa onde eu coloquei isso em meu layout e quais modificadores eu preciso pressionar), e no segundo eu apenas digitaria J maiúscula em meu layout, porque eu tenho um J na posição do teclado onde US qwerty tem um / .

Muito parecido com krux02, eu tive que digitar 'Ctrl + ü' e 'Ctrl + k' para desfazer e refazer, respectivamente, mas fui capaz de encontrar a configuração "keyboard.dispatch" apropriada e isso parece ter resolvido o problema.

SO: Ubuntu 18.04 LTS

VSCode:

Versão 1.23.1
Commit d0182c3417d225529c6d5ad24b7572815d0de9ac
Data 10-05-2018T16: 04: 33.747Z
Shell 1.7.12
Renderer 58.0.3029.110
Nó 7.9.0
Arquitetura x64

Nossa, estou usando o vscode insider apenas para esperar que esse problema seja corrigido.
Assim como @sakasistem
Eu uso thinkpad com teclado qwerty físico, modifico meu mapa de teclado para dvorak personalizado com arquivo xkb no linux mint sonya

Aqui está o arquivo de mapa de teclado https://pastebin.com/cUAxDtAM
É para o sistema operacional baseado em debian, Linux Mint para ser exato.
Coloque-o em /usr/share/X11/xkb/symbols/us imediatamente antes da definição dvorak-intl
partial alphanumeric_keys xkb_symbols "dvorak-intl" {

Ele adiciona magia de navegação ao layout de dvorak, ele se comportará up , left , down , right com RAlt+c,RAlt+h,RAlt+t,RAlt+n (deveria ser i, j, k, l em qwerty em vez de c, h, t, n ), ele realmente funciona na maioria dos aplicativos com modificador ctrl , shift e alt , mas vscode. Ctrl+RAlt+n deve pular a próxima palavra, mas em vez disso se comporta como Ctrl + n e abre uma nova guia.

O modificador Shift funciona, o que faz com que Shift+RAlt+s selecione até o final da linha, apenas o modificador Ctrl que aciona o atalho para o primeiro lugar.

Bem, aqui está o conteúdo do pastebin:

partial alphanumeric_keys
xkb_symbols "dvorak-shy" {

    name[Group1]= "English (Dvorak) by Shy";

    key <TLDE> { [       grave, asciitilde, dead_grave, dead_tilde  ] };

    key <AE01> { [      1,  exclam      ]   };
    key <AE02> { [      2,  at      ]   };
    key <AE03> { [      3,  numbersign  ]   };
    key <AE04> { [      4,  dollar      ]   };
    key <AE05> { [      5,  percent     ]   };
    key <AE06> { [      6,  asciicircum, dead_circumflex, dead_circumflex ] };
    key <AE07> { [      7,  ampersand   ]   };
    key <AE08> { [      8,  asterisk    ]   };
    key <AE09> { [      9,  parenleft,  dead_grave] };
    key <AE10> { [      0,  parenright  ]   };
    key <AE11> { [ bracketleft, braceleft   ]   };
    key <AE12> { [ bracketright, braceright,  dead_tilde] };

    key <AD01> { [  apostrophe, quotedbl, dead_acute, dead_diaeresis    ] };
    key <AD02> { [  comma,  less,   dead_cedilla, dead_caron    ] };
    key <AD03> { [      period, greater, dead_abovedot, periodcentered  ] };
    key <AD04> { [      p,  P       ]   };
    key <AD05> { [      y,  Y       ]   };
    key <AD06> { [      f,  F       ]   };
    key <AD07> { [      g,  G, Page_Up, Page_Up     ]   };
    key <AD08> { [      c,  C, Up, Up       ]   };
    key <AD09> { [      r,  R, dead_tilde, dead_tilde       ]   };
    key <AD10> { [      l,  L       ]   };
    key <AD11> { [  slash,  question    ]   };
    key <AD12> { [  equal,  plus        ]   };

    key <AC01> { [      a,  A       ]   };
    key <AC02> { [      o,  O       ]   };
    key <AC03> { [      e,  E       ]   };
    key <AC04> { [      u,  U       ]   };
    key <AC05> { [      i,  I       ]   };
    key <AC06> { [      d,  D, Home, Home       ]   };
    key <AC07> { [      h,  H, Left, Left       ]   };
    key <AC08> { [      t,  T, Down, Down       ]   };
    key <AC09> { [      n,  N, Right, Right     ]   };
    key <AC10> { [      s,  S, End, End     ]   };
    key <AC11> { [  minus,  underscore  ]   };

    key <AB01> { [   semicolon, colon, dead_ogonek, dead_doubleacute ] };
    key <AB02> { [      q,  Q       ]   };
    key <AB03> { [      j,  J       ]   };
    key <AB04> { [      k,  K       ]   };
    key <AB05> { [      x,  X       ]   };
    key <AB06> { [      b,  B       ]   };
    key <AB07> { [      m,  M, Page_Down, Page_Down     ]   };
    key <AB08> { [      w,  W       ]   };
    key <AB09> { [      v,  V       ]   };
    key <AB10> { [      z,  Z       ]   };

    key <BKSL> { [  backslash,  bar             ]       };


    key <CAPS> { [    BackSpace,    BackSpace,       BackSpace,        BackSpace ] };

    include "level3(ralt_switch)"
};

preste atenção ao código mágico include "level3(ralt_switch)" que faz RAlt como mod3, mas faz vscode reconhecê-lo como unknown .

Linux aqui, não usando um layout de teclado incomum, eu apenas remapeei Caps Lock para Backspace via XkbOptions , e isso também não funcionou. Mudar para keyCode fez com que funcionasse. Acho que isso afeta qualquer tipo de mapeamento de teclas.

Para mim, os dois pontos : pararam de funcionar espontaneamente no Visual Studio Code 1.32.3 no macOS 10.14.3. A combinação de teclas em Neo2 é caps lock + ; (em qwerty). Definir keyboard.dispatch para keyCode ajudou.

Outro usuário neo2 aqui;) Encontrou o problema de backspace-not-working nos primeiros minutos de uso do VSCode. Felizmente, a solução alternativa funciona perfeitamente até agora!
No entanto, seria ótimo se esse bug fosse corrigido algum dia;)

A solução alternativa de https://github.com/microsoft/vscode/issues/24043#issuecomment -292334048 funciona para a funcionalidade backspace (: +1:), mas movendo uma palavra para frente / para trás e excluindo uma palavra na frente ou atrás do cursor ainda não funciona: confused :, ou seja, Ctrl + Alt Gr + w (no layout qwerty / teclas do teclado) deve excluir uma palavra à esquerda do cursor, mas apenas colar a área de transferência, que seria Ctrl + w (em layout / teclas qwerty no teclado) que é Ctrl + v .
Parece que o pressionamento da tecla Alt Gr é simplesmente ignorado ao pressionar a tecla Ctrl .

Estou usando o Arch Linux com as atualizações mais recentes.

Como posso fornecer mais informações para ajudar a resolver esse problema?

Eu sou novo no VS Code e uso o layout KOY (com algumas adaptações) no Linux ( setxkbmap de koy ). O mesmo problema do Neo2: posso digitar um hífen pressionando CapsLock+L no editor. Mas os atalhos contendo CapsLock não funcionam (como diminuir o zoom com Ctrl+- = Ctrl-CapsLock-L ).

A página de problemas de atalhos de teclado recomenda executar F1 > Developer: Inspect key mappings se nada mais ajudar.

Com o layout alemão padrão ( setxkbmap de ), eu consigo isso para a tecla L :

    "KeyL": {
        "value": "l",
        "withShift": "L",
        "withAltGr": "ł",
        "withShiftAltGr": "Ł"
    }

Com KOY ( setxkbmap de koy ), eu obtenho:

    "KeyL": {
        "value": "n",
        "withShift": "N",
        "withAltGr": "n",
        "withShiftAltGr": "N"
    },

Aparentemente, o VS Code não acerta os níveis mais altos do layout!

Algumas informações técnicas adicionais sobre esta família de layout de teclado (neo, adnw, koy, bone):

No layout padrão alemão, AltGr é mapeado para ISO_Level3_Shift (no Linux). No Neo2 (e semelhantes), AltGr é mapeado para ISO_Level5_Shift e CapsLock é mapeado para ISO_Level3_Shift .

Então eu acho que devemos ver na saída de > Developer: Inspect key mappings também

    "KeyL": {
        "value": "n",
        "withShift": "N",
        "withAltGr": "-",

(porque CapsLock substitui AltGr em Neo2 em termos de ser a nova tecla ISO_Level3_Shift )

ou

    "KeyL": {
        "value": "n",
        "withShift": "N",
        "withAltGr": "6",

(porque você obtém um "6" quando pressiona a tecla física L, como você pode ver na captura de tela do OP).

Espero que isso ajude os desenvolvedores do VS Code a entender melhor nosso problema.

Estou ciente de que eu (e outros) estamos misturando algumas questões relativas a Neo aqui. Mas eles podem estar relacionados.

Testado no Ubuntu 18.04 com esta versão do VS Code / Codium:

Version: 1.44.0
Commit: 2aae1f26c72891c399f860409176fe435a154b13
Date: 2020-04-09T10:44:46.342Z
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Linux x64 4.15.0-96-generic

Parece que o pressionamento da tecla Alt Gr é simplesmente ignorado ao pressionar a tecla Ctrl .

Estou tendo o mesmo problema. Marcar letras simples por meio de Shift + RightArrow funciona quando eu entro em RightArrow por meio de AltGr + E , mas usar Ctrl + Shift + RightArrow com o Neo-layout despacha Ctrl + Shift + E vez disso .
Usei a funcionalidade de gravação de chave e obtive com o método de despacho code :

  • Pressionar Shift + AltGr + E primeiro exibiria shift + alt , depois se transforma em shift + right .
  • Pressionar Ctrl + Shift + AltGr + E primeiro exibe ctrl + shift + alt , depois se transforma em ctrl + shift + e

e com o método keyCode :

  • Pressionar Shift + AltGr + E mostraria primeiro shift + oem_8 , depois se transforma em shift + right .
  • Pressionar Ctrl + Shift + AltGr + E exibe ctrl + shift + oem_8 ctrl+shift+e

O mesmo acontece quando se usa apenas Ctrl + AltGr +E que se torna ctrl + e vez de ctrl + right .

Para este problema específico, seria uma solução alternativa viável apenas marcar uma determinada chave como morta? Layouts como o Neo não precisam do VSCode para ouvir AltGr , ele só deve processar o código-chave que é despachado quando pressionado em combinação. Além disso, quando essa camada está “bloqueada” usando ambas as teclas Mod4, pressionar Ctrl + Shift + e é corretamente reconhecido como ctrl + shift + right .

Minhas informações de layout:

"layout": {
        "model": "pc105",
        "layout": "de,de,gb",
        "variant": "neo,,",
        "options": "grp_led:scroll,altwin:alt_super_win",
        "rules": "evdev"
    }

Eu tive o mesmo problema descrito aqui várias vezes, onde segurar control ou teclas semelhantes torna certas teclas no nível 4 do layout neo inutilizáveis ​​e executa atalhos indesejados.

Minha correção / solução alternativa

O que funcionou para mim em Ubuntu 18.04 e corrigiu todos esses problemas, foi executar setxkbmap -layout de -variant neo após a inicialização e a cada despertar. Parece funcionar com qualquer configuração para keyboard.dispatch ( keyCode ou code ).

Comece

Em "Startup Application Preferences"->Add insira setxkbmap -layout de -variant neo assim e salveScreenshot

Acorde

Com sudoedit /lib/systemd/system-sleep/setxkbmap add

#!/bin/bash
case $1 in
  post)
    DISPLAY=:1 ; export DISPLAY
    su $USER -c "sleep 1; setxkbmap -layout de -variant neo"
  ;;
esac

e conceda permissões executáveis ​​com sudo chmod 755 /lib/systemd/system-sleep/setxkbmap .

  • Em vez de $USER adicione seu usuário.
  • Em todos os outros lugares, encontrei DISPLAY=:0 sugeridos, mas não funcionou comigo. Então tentei o valor que obtive de echo $DISPLAY ( :1 ), que funcionou.
  • Se não funcionar, tente um atraso maior (por exemplo, em vez de sleep 1; , use sleep 3; )

Espero que isso ajude outros!

Esta página foi útil?
0 / 5 - 0 avaliações