Mapear Caps Lock para controle no Linux Mint

13

Estou executando a versão mais recente do Linux Mint com Cinnamon. Eu estou tentando mapear Caps Lockpara Ctrl, mas eu não consigo descobrir como fazê-lo. Todas as pesquisas na Web que eu fiz me levaram a versões mais antigas do Linux Mint (não há opção de layout de teclado nas minhas configurações). Como posso fazer isso?

Zach Russell
fonte
3
Você pode atualizar sua pergunta para indicar exatamente qual é a versão mais recente? Esta questão pode estar aqui por anos.
Keith Thompson
Como uma linha de orientação ... a versão 'atual' do Linux Mint é a nº 18 (~ 2016), portanto, citar " o mais recente " de quase tudo na computação vai desaparecer rapidamente da cor " factual ". (Incluindo este.)
será

Respostas:

18

Você pode conseguir isso com xmodmap. Adicione o seguinte a ~/.xmodmap:

remove Lock = Caps_Lock
keysym Caps_Lock = Control_L
add Control = Control_L

e execute o comando xmodmap ~/.xmodmap. Você pode colocar esse comando em qualquer arquivo de inicialização processado pelo seu WM ou DE. Isso funcionará apenas no X, mas funcionará independentemente do ambiente gráfico que você usar.

Casey
fonte
Qual seria o local ideal para esse comando para um usuário do Linux Mint Cinnamon?
Zamicol
17

Eu encontrei. Foi movido para a seção de preferências regionais:

Vá para configurações> preferências regionais> layouts de teclado> configurações e expanda a seção caps lock.

ATUALIZAR:

No Linux Mint 17.1, você pode acessá-lo via;

Configurações do sistema> Hardware> Teclado> Layouts de teclado> Opções> Comportamento das teclas Caps Lock

Zach Russell
fonte
5

Não há necessidade de usar o obsoleto, xmodmappois já existe uma xkbopção - ou seja, ctrl:nocapsno terminal:

setxkbmap -option ctrl:nocaps

Com o gnome 3, você pode usar dconf-editore adicionar ctrl:nocapssuas opções do xkb em org> gnome> desktop> fontes de entrada :

insira a descrição da imagem aqui

ou simplesmente permitir que Caps Lock como Ctrl no gnome-tweak-toolsob posição-chave Typing> Ctrl :

insira a descrição da imagem aqui

don_crissti
fonte
setxkbmap -option ctrl: nocaps parece funcionar bem no Debian Jessie, obrigado.
Ján Lalinský
3

Para o LinuxMint 17 com KDE, era: Configurações do Sistema> Dispositivos de Entrada> Teclado> Avançado> Posição da tecla Ctrl

Roger
fonte
3

Sei que isso já tem uma resposta aceita, mas aqui é o verdadeiro sentido único à mudança Caps Lockpara ctrl. Isso funciona em todas as versões do Linux, em todas as distros, para todo o sistema (console, X, qualquer que seja). Ele define o mapeamento no kernel onde deveria estar .

(echo $(dumpkeys |grep -i keymaps); echo keycode 58 = Control) | loadkeys -

Adicione isso a um script de inicialização (por exemplo /etc/rc.local, ou crie seu próprio).

No Debian (e derivados), dumpkeys / loadkeys faz parte do kbdpacote, se por algum motivo ainda não estiver instalado.

bahamat
fonte
Se eu não conseguir fazer isso funcionar com o Linux Mint 18.1. Tentei tanto manualmente como root e também adicionando-a /etc/rc.local, e tentou Sair e reiniciar
Roy Truelove
Não funciona na minha Debian Jessie.
Ján Lalinský
1

No Mint 17.2, selecione Preferências -> Teclado -> Layouts -> Opções, selecione o comportamento das teclas Caps Lock, selecione "Tornar o Caps Lock um controle adicional".

Stu
fonte
0

A atualização desse encadeamento para o Linux Mint 18.3 (Beta), pois esta opção parece ser um destino em movimento.

  1. Clique no Centro de Controle no Menu Iniciar e selecione o botão Teclado.
  2. Na janela pop-up, selecione a guia Layouts.
  3. Na janela Layouts. clique no botão Opções na parte inferior.
  4. Na lista Opções, expanda a que diz "Posição da tecla Ctrl".
  5. Na parte inferior, marque a caixa de seleção ao lado de "Trocar Ctrl e Caps Lock".
David Harper
fonte
0

Aqui está uma versão destilada:

0) Verifique se Caps Lock está desativado

1) Crie o seguinte arquivo:

/etc/udev/hwdb.d/10-caps-modifier.hwdb
---
evdev:atkbd:dmi:*            # built-in keyboard: match all AT keyboards for now
  KEYBOARD_KEY_3a=leftctrl   # bind capslock to leftctrl

2) Execute o seguinte comando:

$ systemd-hwdb update

3) Execute o seguinte comando para fazer o remapeamento ter efeito imediato:

$ udevadm trigger

Isso foi testado no Ubuntu 18.04.2 LTS executando o Xfce. O remapeamento funciona muito bem em tty consoles e no sistema de entrada X.

Obrigado a esta página por todos os detalhes: https://wiki.archlinux.org/index.php/Map_scancodes_to_keycodes, mas foi preciso muito esforço para analisar o que realmente precisava ser feito.

jdsumsion
fonte