Erro ao definir o layout kb com 'setxkbmap'

4

Eu tenho o redirecionamento de x11 configurado a partir de um ubuntu de 12.04 vm para o meu laptop (windows). Ele funciona, mas quando eu digito os aplicativos encaminhados, ele está usando o layout qwerty e eu gostaria que ele usasse o colemak.

Eu gostaria de uma solução de linha de comando, pois não tenho a GUI instalada na VM.

Eu tentei setxkbmap -v us -variant colemak , mas recebi "Erro ao carregar a nova descrição do teclado":

$ setxkbmap -v us -variant colemak
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Warning! Multiple definitions of layout variant
         Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes:   xfree86+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+us(colemak)
geometry:   pc(pc101)
Error loading new keyboard description

Eu também tentei setxkbmap -v us -variant dvorak , o que parece funcionar.

O que está errado? O Colemak vem com o Ubuntu, e eu posso ver uma seção para ele em /usr/share/X11/xkb/symbols/us , que é onde o layout é definido, eu assumo.

    
por Gabe Moothart 25.09.2012 / 00:26

2 respostas

3

Meu erro foi assumir que os layouts de teclado que eram importantes eram os da vm (/ usr / share / X11 / xkb / symbols /).

Na verdade, ao usar x-forwarding, são os layouts de teclado definidos no meu servidor x, xming (C: \ Arquivos de Programas (x86) \ Xming \ xkb \ symbols) que são importantes, e o colemak não é incluído no xming por padrão. Consegui apenas baixar a definição de colemak e soltá-la na pasta xming symbols; então funciona como esperado.

    
por Gabe Moothart 09.10.2012 / 19:30
1

É estranho, posso mudar corretamente para colemak com seu comando:

#> setxkbmap -v us -variant colemak
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Warning! Multiple definitions of layout variant
         Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+us(colemak)+inet(evdev)
geometry:   pc(pc105)

mas não posso, se eu tentar manter minha variante italiana:

#> setxkbmap -v it -variant colemak
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Warning! Multiple definitions of layout variant
         Using command line, ignoring X server
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+it(colemak)+inet(evdev)
geometry:   pc(pc105)
Error loading new keyboard description

Sugiro-lhe este artigo , mas dado que você não tem nenhum gerenciador de desktop instalado, será bem inútil.

No entanto, a motivação deve ser esta:

#> grep colemak /usr/share/X11/xkb/symbols/*
/usr/share/X11/xkb/symbols/gb:xkb_symbols "colemak" {
/usr/share/X11/xkb/symbols/gb:    include "us(colemak)"
/usr/share/X11/xkb/symbols/lv:// http://colemak.com/
/usr/share/X11/xkb/symbols/lv:xkb_symbols "colemak" {
/usr/share/X11/xkb/symbols/lv:xkb_symbols "apostrophecolemak" {
/usr/share/X11/xkb/symbols/lv:  include "lv(colemak)"
/usr/share/X11/xkb/symbols/ph:// http://colemak.com
/usr/share/X11/xkb/symbols/ph:xkb_symbols "colemak" {
/usr/share/X11/xkb/symbols/ph:xkb_symbols "colemak-bay" {
/usr/share/X11/xkb/symbols/us:// 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain.
/usr/share/X11/xkb/symbols/us:xkb_symbols "colemak" {

Eu posso escolher o layout colemak entre os idiomas gb , lv , ph e us . Você deve ter um problema semelhante.

No final da história, você pode fazer duas coisas: selecione colemak para um idioma próximo a us que você instalou (por exemplo, uk ou gb ) ou tente instalar colemak suporte para us idioma via linha de comando (eu realmente não sei como, desculpe).

    
por Avio 05.10.2012 / 18:54