A letra ć está aparecendo ao invés de ç (cedilha) no Google Chrome ao configurar flag ozone-platform-hint para wayland

Contexto

Estou usando o Fedora 39 workstation e possuo um teclado Logitech Mx Keys, com padrão ANSI, então estou usando o layout de teclado Inglês Internacional.

Por usar este teclado, sempre que formato meu sistema tenho que corrigir o chatissimo problema com a letra cedilha, que ao invés do símbolo “ç” para mim aparece “ć”. Eu consegui corrigir esse problema (não lembro exatamente o método que efetivamente corrigiu) ao formatar, e até que estava indo tudo bem.

O problema foi que, ao mudar a flag ozone-platform-hint do navegador chrome para wayland, a tecla cedilha volta a dar problema, mas só no chrome (e web apps vindos dele).

Soluções já tentadas

Já tentei algumas soluções que encontrei, como mudar o arquivo /etc/environment, executar o script Gnome Cedilla Fix, dentre outras soluções, mas nenhuma delas funciona.

Observação: No sistema funciona normalmente, somente no chrome e web apps gerados através dele que não funcionam.

Demonstrando o problema

Neste gif (ficou um pouco travado quando converti de mp4 pra gif) eu mostro na esquerda uma janela do chrome e na direita o editor de textos do fedora.

2024-08-28-12-00-32

Tente outra distro baseada em red hat,ou ubuntu,pois e so vc digitar no terminal do ubuntu

Sudo apt-install alien
Dps
sudo alien nome-do-arquivo.rpm

Ou se vc configurou ABNT2(ou ABNT) ele sempre vai dar isso.


Isso é ABNT

Isso é ANSI
Eu ja tive o mesmo problema em outras distro porem eram ubuntu-based
Eu uso um teclado mbtech abnt2,mais eu esqueci o modelo (nn uso rgb,pq tenho medo de nn ligar o led no linux)

Esse mesmo problema, ocorre aqui no Vivaldi usando o Wayland (Arch Linux).
Existe uma forma de contornar esse problema, pressionando a tecla ALT na direita da barra de espaço e vírgula, para gerar o cedilha.

2 curtidas

Eu não quero trocar de distro. Eu realmente gostei do Fedora, e provavelmente vou atualizar em breve pra proxima versão.

Não entendi exatamente o que você quis dizer em relação aos layouts de teclado, mas eu estou usando um Logitech MX Keys, que é ANSI, e o layout que to usando no Fedora é o English (US, alt. intl.), e o cedilha funciona perfeitamente (uma vez feitas as correções pra isso) quando eu uso a flag ozone-platform-hint como “Default”, que no caso usa X11:

O problema só acontece quando eu coloco como “Wayland”. Nesse caso, somente dentro do Google Chrome que o cedilha fica com esse problema, já no sistema continua funcionando certinho.

Muito obrigado pela dica! Eu já sabia dessa possibilidade, mas acho um pouco “desconfortável” de digitar assim (/ estou com preguiça de ter que me acostumar a fazer).

O que eu mais queria mesmo era uma solução que conseguisse fazer o cedilha aparecer normalmente quando eu fizesse a combinação ' + c.

Encontrei este script aqui GitHub - marcopaganini/gnome-cedilla-fix: A fix to make the Gnome "US-International" layouts generate a cedilla c (ç) when the user types '+c., que funciona tanto no Wayland quanto no X.

2 curtidas

em ~/.bash_profile

adicione

export GTK_IM_MODULE=cedilla
export QT_IM_MODULE=cedilla

veja se funciona

reinicie a sessão

1 curtida

Mesmo problema aqui. Ubuntu 24.10, Thinkpad T14 com Teclado Us Int. Cedilha funciona no Firefox, no Edge, Text editor com ACENTO + C, só não funciona no Chrome.

Quando estava com Slackware, tive esse problema com o Softmaker Office. Resolvi assim:

Edite o arquivo /usr/share/X11/locale/en_US.UTF-8/Compose
Substitua nesse arquivo todas as ocorrências de “ć” por “ç”.
Salve o arquivo e reinicie o programa.
2 curtidas

GERALMENTE cedilha é , + C (virgula + letra C) ou ’ + C (aspas simples + letra C)

2 curtidas

Estou com o mesmo problema aqui! Fora do google chrome funciona tudo mas digitar nele ou nos seus webapps.. Acontece a mesma coisa, alguma solućão? O incrível é que só não funciona no Google-Chrome.

1 curtida

O que resolveu para mim, foi criar o arquivo .XCompose no home do seu usuario com o conteudo abaixo.

making a file named .XCompose (note the leading ., so it’s a hidden file in Linux) in your home directory,

<dead_acute> <c>     : "ç"
<dead_acute> <C>     : "Ç"
1 curtida

Mesmo problema aqui! “Ćć”, usando Archlinux com Wayland, acontece apenas no Chrome, o resto do sistema esta perfeito, mas antes de mudar de sistema mudo de navegador… mas legal a dica do altG+“,”… valew!

1 curtida

No meu Brave tá assim também. Antes funcionava normal, depois que atualizei para o Pop 24.04 que começou.

Tentei tudo o que falaram aqui e mais algumas coisas haha não resolvou.

1 curtida

já tentou editar o locale pra ver se resolve? obs:edite tanto o do sistema quanto o do chrome.

1 curtida

Usando o Brave por aqui também e tenho o mesmo problema, mas tô usando o KDE Neon 6.4.5. Parece que isso acontece com navegadores baseados no chromium

1 curtida

Opa, descobri!

Parece que tem algum problema na compatibilidade dos chromium com o wayland. Pra resolver o problema eu tive que colocar a flag –ozone-platform=x11 na inicialização do Brave.

1 - Busque pelo Brave no menu de apps

2 - Clique com o botão direito e depois em “Editar Aplicativo”

3 - Na seção de “Argumentos da linha de comando” coloque o parâmetro ——ozone-platform=x11

4 - Salve

5 - Reinicie o Brave se ele estava aberto e pronto!

Infelizmente eu não consegui achar um jeito de resolver mantendo Wayland nativo, mas achei essa solução boa o suficiente

Puts, no Pop 24.04 não tem essa opcão de “Editar Aplicativo”

Resolvi no Arch Linux com Hyprland + Wayland

Fiz tudo que tem aqui, mas a ultima coisa me deu resultados. Resolvi adicionando o suporte ao Português (Brasil) nos idiomas do Chrome: Settings > Languages > Add languages > Portugues Brasil

Depois disso, fui removendo as configurações pra ver o que é importante, tanto para o sistema, quanto para o Chrome.

O que funcionou?

  1. Alterar as configs do hyprland.conf - Se não usa hyprland, só ignora essa parte, provavelmente não vai fazer diferença pra você
kb_layout = us
kb_variant = intl
kb_model = pc105
  1. Adicionar o :en na linha do cedilla nos arquivos de /usr/lib/gtk-3.0/3.0.0/immodules.cache e /usr/lib/gtk-2.0/2.10.0/immodules.cache - Eu não tinha essa versão do GTK-2.0 na minha máquina, mas pode se aplicar a você.
De......."cedilla" "Cedilla" "gtk20" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa"
Para....."cedilla" "Cedilla" "gtk20" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa:en"
  1. Alterar os ć para ç no arquivo /usr/share/X11/locale/en_US.UTF-8/Compose
# Faz um backup
sudo cp /usr/share/X11/locale/en_US.UTF-8/Compose /usr/share/X11/locale/en_US.UTF-8/Compose.bak

# Altera todas os casos de ć/Ć para ç/Ç e joga em um buffer "Compose"
sed 's/ć/ç/g' < /usr/share/X11/locale/en_US.UTF-8/Compose | sed 's/Ć/Ç/g' > Compose

# sobrescreve o Compose alterado pelo Compose na pasta
sudo mv Compose /usr/share/X11/locale/en_US.UTF-8/Compose
  1. Adicionar o suporte ao Portugues Brasil no Chrome - Do jeito que eu comentei na introdução

O que não funcionou ou piorou?

  1. As variaveis de ambiente, seja na inicialização do shell .zshrc/.bashrc/.bash_profile/... ou no hyprland.conf não tiveram efeito.
export GTK_IM_MODULE=cedilla
export QT_IM_MODULE=cedilla
  1. O arquivo ~/.XCompose fez os outros apps que estavam ok pararem de funcionar, ignorando totalmente os acentos.
  2. A flag no Chrome --ozone-platform=x11 não teve efeito. Na real, qualquer outra flag ou variavel de ambiente iniciada com o Chrome não funcionou: GTK_IM_MODULE=none, LC_CTYPE=pt_BR.UTF-8, --disable-extensions, etc

Referencias

Espero ter ajudado =)

2 curtidas