Como usar o layout atual do teclado para atalhos de teclado no i3?

0

Acabei de instalar o i3 com a configuração padrão e há um grande problema com atalhos de teclado : mesmo Embora meu layout de teclado não seja QWERTY, os atalhos de teclado são mapeados para as teclas QWERTY relevantes. Então eu tenho que pressionar Win + a tecla marcada "F" no layout QWERTY para tela inteira em uma janela, mesmo que pressionar essa tecla produza um caractere "u" (no layout Dvorak). Como faço para contornar isso de modo que pressionar Win + f funcione no layout any , sem precisar de configuração separada por layout?

    
por l0b0 05.03.2018 / 01:53

1 resposta

1

Resposta curta:

Se você quiser usar a configuração padrão, basta copiar /etc/i3/config para ~/.config/i3/config (ou ~/.i3/config ; substitua o que já existir para evitar confusão).

Resposta longa:

i3 suporta a configuração de atalhos de teclado por símbolos de teclas , bem como por códigos de teclas .

  • Símbolos-chave são os caracteres que são enviados por um pressionamento de tecla e dependem do layout do teclado. Eles estão vinculados à palavra-chave bindsym . Por exemplo, para ligar toggle fullscreen à combinação de Win e a chave que envia um "f" você usaria:

     bindsym Mod4+f fullscreen toggle
    

    Este método se presta para uso com mnemônicos ( F ullscreen, re S ize, etc.) e você pode encontrar imediatamente o atalho desejado apenas olhando para a configuração . Mas se você alternar entre os layouts de teclado, a tecla também poderá se mover. Além disso, se você alternar entre os diferentes alfabetos, nem todos os símbolos serão representados nos dois layouts.

  • Códigos de chave representam a chave física no teclado e não dependem do layout do teclado, mas apenas do modelo do teclado (por exemplo, pc104 , pc105 ). Para ligar toggle fullscreen à combinação de Win e a chave que é rotulada como F em um teclado americano (homerow, left index dedo):

     bindcode Mod4+41 fullscreen toggle
    

    Este método mantém atalhos no mesmo local físico em diferentes layouts de teclado. Isso é especialmente útil, se você alternar entre os layouts, mas encontrar seus atalhos principalmente pela memória muscular. Por outro lado, a configuração não é muito legível ( f vs. 41 ).

Dependendo da preferência pessoal, você pode escolher um dos métodos. Você pode até mixá-los, mas é preciso tomar cuidado para não atribuir a mesma chave duas vezes, por exemplo, bindsym f … e bindcode 41 … ao mesmo tempo.

Normalmente, os pacotes i3 vêm com uma configuração padrão para cada método. /etc/i3/config para bindsym e /etc/i3/config.keycodes para bindcode . Se i3 não encontrar uma configuração de usuário, ele poderá criar uma usando i3-config-wizard . Isso leva a configuração padrão config.keycodes e substitui todas as configurações de bindcode pelas configurações equivalentes de bindsym no layout de teclado atual. Isso garante que todas as chaves estejam no mesmo local, conforme mostrado em Guia do usuário , e que o arquivo de configuração seja facilmente compreendido. ao mesmo tempo. A desvantagem é que isso quebra alguns mnemônicos se você não estiver usando um layout QWERTY ou QWERTZ.

Minha sugestão pessoal seria ter uma (longa) olhada no Guia do usuário e usar somente a configuração padrão como um ponto de partida para criar sua própria configuração, que se adapta ao seu fluxo de trabalho e preferências.

    
por 12.03.2018 / 12:21