AltGr em layouts de teclado fonético

3

Sou sueco e ocasionalmente escrevo em dinamarquês e norueguês. Para isso, eu não troco os layouts de teclado, apenas digite AltGr + ä para obter æ e AltGr + ö para obter ø, as únicas letras dinamarquesas / norueguesas não disponíveis no meu teclado nativo sueco. Agora estou aprendendo russo e para isso mudo para um layout de teclado chamado "Russian (Swedish, phonetic)", que está disponível no Ubuntu Linux 16.04.

Mas às vezes eu também preciso digitar palavras do ucraniano e bielorrusso que têm algumas letras extras. Para isso, seria muito conveniente apenas digitar AltGr + и para obter o ucraniano і e AltGr + э para obter o ucraniano є, não tendo que alternar entre tantos layouts. Mas atualmente, este layout de teclado não parece fazer uso algum do AltGr. Então, como eu faço isso, e como as melhorias podem ser distribuídas com a próxima versão do Ubuntu Linux?

Meu trabalho, que é muito menos conveniente, é mudar para o layout "ucraniano (fonético)". Ter que alternar entre três layouts é complicado e não deve ser necessário na minha situação.

    
por Lars Aronsson 11.05.2017 / 19:18

1 resposta

2

Aqui está meu caminho para responder minhas próprias perguntas: O arquivo que eu preciso editar é

/usr/share/X11/xkb/symbols/se

Esse arquivo contém o layout sueco regular (onde AltGr + ä = æ) e o "russo (sueco, fonético)". Ainda assim, editei a seção russa desse arquivo e nada aconteceu. De anos anteriores, há muitos posts no fórum discutindo por que as edições do xkb não são efetivadas. Uma resposta comum era que um arquivo de cache em / var / lib / xkb tinha que ser removido, mas não havia tal arquivo no meu sistema e no Ubuntu 16.04 não há necessidade de removê-lo. Mas, em vez disso, a seção russa do arquivo continha uma linha key.type [group1]="ALPHABETIC"; que eu tive que comentar. Eu não sei porque essa linha estava lá ou o que deveria fazer. Depois que eu comentei esta linha, agora posso adicionar as definições AltGr como número 3 e 4 em cada linha, e elas terão efeito na próxima vez que eu alternar entre layouts de teclado. Então modifiquei as seguintes linhas:

key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, U0301, U0300 ] }; // acute, grave
key <AD01> { [ Cyrillic_ya, Cyrillic_YA, U0463, U0462 ] }; // Yat
key <AD03> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] };
key <AD07> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] };
key <AD08> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] };
key <AD11> { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ] };
key <AC05> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
key <AC07> { [ Cyrillic_shorti, Cyrillic_SHORTI, Ukrainian_yi, Ukrainian_YI ] };

A primeira linha adiciona uma combinação de acento agudo ao AltGr ъ e combina acentuação grave no AltGr Ъ (a tecla ´´), o que é útil se você escreve dicionários russos onde os acentos são usados: мо́ре, моря́. Em contraste com as letras latinas, o Unicode não contém pontos de código para as vogais cirílicas com acento agudo; portanto, esses acentos de combinação são necessários.

As próximas linhas adicionam ў para bielorrusso, ѣ (yat) para ortografia russa anterior a 1917, ї, ґ, є para ucraniano, і para todas as três ortografias, e coloca ё em AltGr ¥ por conveniência. Talvez você discorde das posições. Deve AltGr и = і ou ї? É mais óbvio que AltGr г = ґ e AltGr у = ў.

Com isso, estou feliz principalmente. O que resta é colocar isso na próxima distribuição do Ubuntu. Como? Quem?

    
por Lars Aronsson 11.05.2017 / 21:27