Linguagem de layout sem modelo / sem estado com Caps Lock, novamente (18.04 LTS Bionic Beaver)


12

Isso já foi solicitado inúmeras vezes, então tentarei ser breve.

Tenho dois layouts de entrada , ucraniano e inglês, e quero:

  • usar Caps Lockpara troca rápida;
  • não tenho atrasos impostos, sou um digitador rápido;
  • não possui erros de modo :
    • (qualquer número de) CapsLockdefine inglês,
    • (qualquer número de) ShiftCapsLockdefine ucraniano;
  • veja o layout atual no widget padrão.

Eu já tentei três (!) GUIs para configurar isso, as Configurações do Gnome, o gnome-tweak-tool, o  dconf-editor/ gsettings. Nada funciona. Tweakstrava aleatoriamente.

Trabalho de casa suficiente feito

Eu mesmo perguntei isso há 4 anos por 14.04 LTS. Desde então, o pop-up da interface do usuário apareceu e tudo quebrou. Agora posso configurar facilmente alternar com estado CapsLock , mas mesmo assim, acompanha esse atraso irritante. Basicamente inutilizável em momentos em que preciso de um idioma alternado 4-5 vezes por frase.

Esta discussão sugere a caps:noneopção XKB como uma solução alternativa de erro. Eu tentei isso, tanto com gsettingsCLI e dconf-editor, e em combinações com a grp:shift_caps_switchopção XKB. Sem dados. Algo supera os principais recursos do XKB como parece.

Esta discussão ofertas caps:menuopção XKB como um hack para ser capaz de se ligar CapsLockem Gnome Settings→ Dispositivos → Teclado. Isso meio que funciona, mas A) fornece comutação cíclica / com estado; B) Eu tenho que esperar um tempo limite decente em cada switch.

Esse tópico pergunta exatamente o que eu preciso, mas não tem resposta e é ainda pior: fechado como duplicado de duas outras perguntas (???), nenhuma das quais é a mesma e nenhuma delas me fornece uma solução funcional. O que há de errado com vocês?

outra correspondência exata - infelizmente, sem resposta!


Procura-se: solução limpa


1
E quanto à reputação, em vez de $ por uma recompensa, digamos +50 pontos de reputação?
22419

@karel Não vejo nada de errado nisso, no entanto, perguntas "novas" não são elegíveis para recompensa de representante na stackexchange. Uma recompensa pode ser iniciada em uma pergunta dois dias após a pergunta ; cancele a votação.
precisa saber é

Eu não voto negativo. Tudo o que fiz foi comentado.
22419

Está bem. No entanto, eu tinha tanto ofereceu e ganhou prémios reputação especificamente sobre AskUbuntu. Esta questão também terá uma quando chegar a hora.
28519 ulidtko

1
@ulidtko Vou tentar dar um pico em gnome-tweaks-tool. Não prometo se eu conseguir descobrir alguma coisa e precisar de algum tempo, já que estou ocupado ultimamente, mas vou postar uma resposta se descobrir algo relacionado a gnome-tweak-tool. Sinta-se livre para me deixar um comentário aqui ou contacte-me de outras maneiras
Sergiy Kolodyazhnyy

Respostas:


5

No Ubuntu 18.04, por padrão, há uma opção para escolher Caps_Locke Shift+ Caps_Lockpara alcançar o comportamento que estamos procurando gnome-tweaks. Mas isso não está funcionando e não foi possível obter o motivo.

insira a descrição da imagem aqui

Eu poderia conseguir esse comportamento pela solução abaixo.

Veja este link para um vídeo 20Sec. https://imgur.com/QNdrVqa

primeiro verifique os comandos abaixo no terminal se eles estão alterando o idioma de entrada.

gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager().inputSources[1].activate()"

e

gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager().inputSources[0].activate()"

bem, eles estão trabalhando.

insira a descrição da imagem aqui

precisamos vincular esses comandos às teclas pressionadas Caps_Locke Shift+Caps_Lock

pode conseguir isso xbindkeysse o xbindkeys ainda não estiver instalado, instale-osudo apt install xbindkeys

  1. crie um arquivo .xbindkeysrcna pasta $ HOME
    touch ~/.xbindkeysrc
  2. Para saber o código-chave / ID, como sempre é chamado de
    executar, xbindkeys --keyquando a caixa branca aparecer, pressione o Caps_Lockbotão, faça-o Shifttambém para o botão e copie os códigos-chave / IDs, conforme mostrado abaixo

insira a descrição da imagem aqui

  1. esta etapa é opcional. Desative o Caps Lock. Veja abaixo gif. Se o caps lock não estiver desativado .. ao pressionar a tecla várias vezes, ele alternará enquanto você tenta alterar o idioma. Eu o desabilitei. mas é baseado no seu interesse.

insira a descrição da imagem aqui

  1. Abra o arquivo .xbindkeysrc
    gedit ~/.xbindkeysrce edite-o como abaixo, com base nos resultados das etapas acima

Altere os valores no conteúdo abaixo de acordo com os resultados obtidos na etapa 2 acima. Conteúdo:

"gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager().inputSources[0].activate()""
m:0x10 + c:66

"gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager().inputSources[1].activate()""
Shift+Mod2 + Shift_L+m:0x10 + c:66
  1. Salve o arquivo, Fechar e reiniciar ..

2
OMG funcionou! Eu nem precisei sair, reinicialização uniforme ( xbindkeys --poll-rc). Também deixei a grp:shift_caps_switchopção XKB ativada - o que mudou a forma como meus códigos de chave são impressos ( m:0x0 + c:66 ISO_First_Group& m:0x1 + c:66 Shift + ISO_First_Group); sem problemas disso. Até o LED do teclado brilha! Trabalho incrível, você totalmente deveria ter essa recompensa. (gnome-tweaks autores, sejam eles quem forem, obter uma carranca mal-humorado de mim e outros.)
ulidtko

5

Há um relatório de bug no qual você pode se inscrever:

O relatório de erro diz:

O painel do teclado possui opções para alternar entre entradas, mas não permite usar Caps como alternador de idioma.

Passos para reproduzir:

  1. teclado do gnome-control-center
  2. Role para baixo até a seção "Digitação"
  3. Clique em Alternar para a próxima fonte de entrada
  4. Press Caps

Resultado esperado: a tecla Caps Lock é aceita como tecla de chave Resultados reais: a tecla Caps é ignorada na janela de seleção.

PS O mesmo vale para 'Alternar para a fonte de entrada anterior' e a combinação de teclas Shift-Caps.

Soluções alternativas de erros

O bug está atualmente no "Wishlist". Essas soluções alternativas são propostas:

Solução alternativa 1

Foi encontrada uma solução alternativa para esse bug:

  1. Instale o dconf-editor (sudo apt-get install dconf-editor)
  2. Vá para / org / gnome / desktop / wm / keybindings /
  3. Selecione a chave de entrada-chave, desative "Usar valor padrão" e defina "Valor personalizado" como ['Caps_Lock']
  4. (Opcional) Você também pode alterar o valor de switch-input-source-backward para algo como ['Caps_Lock'] (novamente, desativando "Usar valor padrão")

Solução 2

Outra maneira de fazer isso: 1. Instale o GNOME Tweaks (gnome-tweak-tool) 2. Abra o aplicativo Tweaks 3. Alterne para o painel Teclado e mouse 4. Clique em Opções adicionais de layout 5. Use a seção "Alternando para outro layout"

Inscrever-se no relatório de erros

Eu recomendaria assinar o relatório de erros e adicionar suas próprias experiências. Quanto mais pessoas assinarem o relatório de erros, mais rápida será a solução (geralmente).


A solução alternativa 1 não se adequa aos meus requisitos, fornece comutação cíclica , que não é o que eu quero. Solução 2 (Gnome-Tweaks) foi tentada e espancada até a morte; Eu posso fazê-lo falhar, mas não posso fazê-lo funcionar. Obrigado pelo (ainda outro) link.
21719 ulidtko

Votou sua pergunta para esperançosamente chamar mais atenção. A publicação de todas as suas tentativas e erros no relatório de erros pode ser útil.
WinEunuuchs2Unix 14/03/19
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.