É possível fazer isso adicionando um novo layout xkb ou uma variante de layout. Aqui está o que eu fiz para adicionar uma nova variante de layout de teclado de caracteres de largura total (para o layout de teclado dos EUA):
-
Faça um backup de
/usr/share/X11/xkb/symbols/us
,/usr/share/X11/xkb/rules/evdev.xml
e/usr/share/X11/xkb/rules/evdev.lst
-
Adicione a variante de layout ao final de
/usr/share/X11/xkb/symbols/us
partial alphanumeric_keys xkb_symbols "fullwidth" { name[Group1]= "English (US, fullwidth)"; key <TLDE> { [ UFF40, UFF5E ] }; key <AE01> { [ UFF11, UFF01 ] }; key <AE02> { [ UFF12, UFF20 ] }; key <AE03> { [ UFF13, UFF03 ] }; key <AE04> { [ UFF14, UFF04 ] }; key <AE05> { [ UFF15, UFF05 ] }; key <AE06> { [ UFF16, UFF3E ] }; key <AE07> { [ UFF17, UFF06 ] }; key <AE08> { [ UFF18, UFF0A ] }; key <AE09> { [ UFF19, UFF08 ] }; key <AE10> { [ UFF10, UFF09 ] }; key <AE11> { [ UFF0D, UFF3F ] }; key <AE12> { [ UFF1D, UFF0B ] }; key <AD01> { [ UFF51, UFF31 ] }; key <AD02> { [ UFF57, UFF37 ] }; key <AD03> { [ UFF45, UFF25 ] }; key <AD04> { [ UFF52, UFF32 ] }; key <AD05> { [ UFF54, UFF34 ] }; key <AD06> { [ UFF59, UFF39 ] }; key <AD07> { [ UFF55, UFF35 ] }; key <AD08> { [ UFF49, UFF29 ] }; key <AD09> { [ UFF4F, UFF2F ] }; key <AD10> { [ UFF50, UFF30 ] }; key <AD11> { [ UFF3B, UFF5B ] }; key <AD12> { [ UFF3D, UFF5D ] }; key <AC01> { [ UFF41, UFF21 ] }; key <AC02> { [ UFF53, UFF33 ] }; key <AC03> { [ UFF44, UFF24 ] }; key <AC04> { [ UFF46, UFF26 ] }; key <AC05> { [ UFF47, UFF27 ] }; key <AC06> { [ UFF48, UFF28 ] }; key <AC07> { [ UFF4A, UFF2A ] }; key <AC08> { [ UFF4B, UFF2B ] }; key <AC09> { [ UFF4C, UFF2C ] }; key <AC10> { [ UFF1B, UFF1A ] }; key <AC11> { [ UFF07, UFF02 ] }; key <AB01> { [ UFF5A, UFF3A ] }; key <AB02> { [ UFF58, UFF38 ] }; key <AB03> { [ UFF43, UFF23 ] }; key <AB04> { [ UFF56, UFF36 ] }; key <AB05> { [ UFF42, UFF22 ] }; key <AB06> { [ UFF4E, UFF2E ] }; key <AB07> { [ UFF4D, UFF2D ] }; key <AB08> { [ UFF0C, UFF1C ] }; key <AB09> { [ UFF0E, UFF1E ] }; key <AB10> { [ UFF0F, UFF1F ] }; key <BKSL> { [ UFF3C, UFF5C ] }; key <SPCE> { [ U3000, U3000 ] }; };
-
Adicione a entrada para o layout variante a
/usr/share/X11/xkb/rules/evdev.xml
e/usr/share/X11/xkb/rules/evdev.lst
Em
evdev.xml
, pesquise<description>English (US)</description>
, role até o último bloco<variant>
para o layoutus
e insira o seguinte depois disso:<variant> <configItem> <name>fullwidth</name> <description>English (US, fullwidth)</description> </configItem> </variant>
Em
evdev.lst
, pesquiseus:
, role até a última entrada comus:
e insira o seguinte depois disso:fullwidth us: English (US, fullwidth)
-
Remova os mapas de teclado previamente compilados:
# rm /var/lib/xkb/*.xkm
-
Efetue logout e login
O novo layout deve aparecer no menu de configurações de entrada de texto como English (US, fullwidth)
, que você pode adicionar às suas fontes de entrada.