Como posso alterar o que as teclas do meu teclado fazem? (Como posso criar comandos / atalhos de teclado personalizados?)

131

Quero alterar as combinações de teclas em algumas das teclas do meu teclado. Eu quero que alguns executem comandos e outros para ativar chaves diferentes.

Quais aplicativos posso usar para fazer isso?


Índice:


Ainda estou procurando respostas usando o dconf e qualquer outro método.

Seth
fonte
Talvez o xmacro pertença a esta resposta? ele pode "Gravar / reproduzir pressionamentos de tecla e movimentos do mouse em telas X".
roadmr
@roadmr Se eu puder usá-lo para criar atalhos de teclado personalizados, então sim!
Seth
Obrigado por adicionar este tópico. Estou procurando uma maneira de usar uma chave como um botão do mouse (segure e arraste, clique, etc). Parece estar faltando no encadeamento.
krumpelstiltskin
@krumpelstiltskin Atualmente, não conheço nenhuma maneira de obter essa duplicação exata de um mouse. Eu sugiro que você faça uma nova pergunta. Se eu fizer descobrir isso eu ainda posso responder lá, ou alguém pode ter uma resposta melhor :)
Seth
1
aqui está uma respostaxkb : askubuntu.com/a/347382/354350
DJCrashdummy 3/15/15

Respostas:

94

xbindkeys ..

sudo apt-get install xbindkeys

Xbindkeys é um programa muito versátil que permite remapear as chaves com muita facilidade. Ele usa um arquivo de configuração, meu padrão localizado em seu diretório pessoal, para alterar as combinações de teclas em determinados comandos.

Para criar um arquivo de configuração padrão, use o comando:

xbindkeys --defaults

O que imprime o arquivo de configuração padrão. Portanto, se você deseja criar o arquivo que contém os valores padrão, você usaria:

xbindkeys --defaults > $HOME/.xbindkeysrc

Que imprime os valores padrão em um arquivo oculto chamado .xbindkeysrclocalizado em home ( ~).

Agora, para realmente alterar as ligações de chaves, primeiro precisamos saber qual é o nome ou o código de chave dessas chaves. xbindkeysnos permite usar a -kalça para encontrar o nome de uma chave ou combinação de teclas. Corre:

xbindkeys -k

E pressione uma tecla ou combinação de teclas. Sua saída será algo semelhante a isto (ao pressionar space):

"NoCommand"
m:0x10 + c:65
Mod2 + space

"No Command"nos diz que atualmente nenhum comando está associado à Spacechave.

m:0x10 + c:65
Mod2 + space  

É o nome da combinação de teclas / teclas.

o arquivo de configuração ..

Vamos abrir o arquivo de configuração que você criou anteriormente:

gedit .xbindkeysrc  

Aqui está um trecho do arquivo de configuração padrão:

#
# A list of keys is in /usr/include/X11/keysym.h and in
# /usr/include/X11/keysymdef.h
# The XK_ is not needed.
#
# List of modifier:
#   Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
#   Mod3 (CapsLock), Mod4, Mod5 (Scroll). 
#

# The release modifier is not a standard X modifier, but you can  
# use it if you want to catch release events instead of press events

# By defaults, xbindkeys does not pay attention with the modifiers
# NumLock, CapsLock and ScrollLock.
# Uncomment the lines above if you want to pay attention to them.

#keystate_numlock = enable
#keystate_capslock = enable
#keystate_scrolllock= enable

# Examples of commands:

"xbindkeys_show" 
 control+shift + q  

Toda linha que começa com #é um comentário e não será lida ou executada xbindkeys.

Até agora, a única linha que não foi comentada é:

"xbindkeys_show" 
 control+shift + q  

Este trecho mostra a sintaxe básica dos xbindkeyscomandos:

"Command to run (in quotes)"
key to associate with command (no quotes)  

Então, como você pode ver:

"xbindkeys_show" 
 control+shift + q  

Executa o comando xbindkeys_showquando você pressiona Ctrl+ Shift+ q.

vincular chaves a comandos ..

Agora vamos tentar vincular algumas chaves. Eu recomendo limpar o arquivo padrão inteiro para que fique em branco. Ele contém ligações de teclas predefinidas que você provavelmente não deseja.

Agora, digamos que você queira usar Ctrl+ bpara abrir o navegador. Primeiro, você precisa saber qual é o nome ou o código da teclaCtrl + b. Como mencionado anteriormente, você pode usar xbindkeys -kpara encontrar o nome de uma chave ou chaves, mas existe uma maneira mais fácil. Para combinações simples como Ctrl+, bvocê pode simplesmente usar:

Control+b

Muito mais fácil, não é!

Agora encontre o comando para o seu navegador favorito:

  • Para o Firefox: firefox

  • Para cromo: chromium-browser

  • Para o Opera: opera

Lembra da sintaxe anterior? O xbindkeyscomando para iniciar o Firefox (ou seu outro navegador favorito) quando você pressiona Ctrl+ bé:

"firefox"
Control+b

Agora coloque isso no seu arquivo de configuração e salve-o. Agora você pode perceber que seu comando ainda não funciona, é porque xbindkeysnão está sendo executado. Para iniciá-lo, basta executar a xbindkeyspartir de um terminal. O seu Ctrl+ bdeve agora iniciar o seu navegador!

vincular chaves a outras chaves ..

Se você deseja que uma tecla do teclado chame uma tecla diferente, precisará de um software extra, pois xbindkeysele não suporta isso por si só. Eu sei de dois programas que podemos usar, xdotoole xte. Eu prefiro, xteentão eu vou usar isso.

Instale-o:

sudo apt-get install xautomation

A sintaxe para xteé assim:

xte 'command key/mousebutton/xyCoordinates'

Exemplos:

  • Para chamar uma única tecla, pressione: xte 'key keyName'

  • Para chamar uma combinação de teclas: xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName

  • Para chamar um botão do mouse: xte 'mouseclick buttonNumber' (Discutiremos um pouco mais sobre a localização dos números dos botões)

  • Para mover o mouse: xte 'mousemove xCoordinate yCoordinate'

  • E mais! Lerman xte

Agora que você conhece o comando para simular pressionamentos de tecla, pode chamá-lo a partir do seu xbindkeysscript, assim:

"xte 'key b'"
Control+b  

Como você pode imaginar, isso é chamado xte 'key b'quando pressionamos Ctrl+ b, o que entraria bem qualquer documento em que você esteja trabalhando no momento.

I coisa a notar, porém, é que xbindkeyse xtenem sempre funcionam muito bem juntos. Às vezes, você precisa pressionar as teclas exatamente ao mesmo tempo para obter a saída, outras vezes funciona bem. Isso pode ou não ter a ver com a configuração do sistema e / ou hardware. Não tenho certeza. Consulte a resposta do maggotbrain para obter uma maneira mais confiável de vincular chaves a outras chaves.

vincular botões do mouse a comandos ..

Você também pode usar xbindkeyspara vincular botões do mouse a comandos (e, portanto, atalhos de teclado, veja acima). O formato básico para os botões do mouse deve ser familiar para você agora:

" [command to run]  "
b:n

Onde [command to run]está o comando que você deseja executar e no número do botão do mouse que você deseja usar para esse comando.

Se você não souber o número do botão do mouse, poderá usar xevpara descobrir o que é:

xev | grep button

A saída será algo como isto:

user@host:~$ xev | grep button
    state 0x10, button 1, same_screen YES
    state 0x110, button 1, same_screen YES
    state 0x10, button 2, same_screen YES
    state 0x210, button 2, same_screen YES
    state 0x10, button 3, same_screen YES
    state 0x410, button 3, same_screen YES

Quando pressiono cada um dos botões do mouse.

Por exemplo:

" firefox "
b:2

Inicia o Firefox quando pressiono o botão do meio do mouse.

Seth
fonte
É possível com o xbindkeys mapear o Meta + C / V para copiar / colar e o Meta + Space para alternar o idioma?
Sonique 14/05
existe uma maneira de anexar uma sequência de caracteres a uma única tecla, por exemplo, anexar "equação" à tecla de aumento de volume?
JPi 01/12/2015
55

Xev e xmodmap

Alterando as combinações de teclas usando xeve xmodmap.

Os dois aplicativos de linha de comando estão disponíveis por padrão, portanto, não há necessidade de instalar software adicional.

O Xev "cria uma janela e solicita ao servidor X que envie eventos sempre que algo acontecer com a janela (como sendo movida, redimensionada, digitada, clicada etc.)". página de manual do xev

xmodmap é um "programa usado para editar e exibir o mapa modificador de teclado e a tabela de mapa de teclas que são usados ​​pelos aplicativos clientes para converter códigos de chave de evento em academias de teclas". Página de manual do xmodmap

O exemplo a seguir remapeará a Caps_Lockchave para o comportamento da Escchave (muitos usuários do vi / vim acham que esse é um mapeamento de teclado útil).

Usando xev

Inicie o xevaplicativo a partir de uma janela do terminal ( Ctrl- Alt- t).

O aplicativo será inicializado, exibirá várias linhas e iniciará uma janela em branco. Mantenha a xevjanela do aplicativo em foco e pressione a tecla cujas propriedades / comportamento que você deseja usar.

  • Pressione a ESCtecla

Na janela do terminal, você verá várias linhas de saída. Anote a terceira linha retornada. Isso conterá o nome da propriedade que você deseja mover para a outra chave.

KeyPress event, serial 32, synthetic NO, window 0x3e00001,
    root 0x256, subw 0x0, time 16245388, (616,73), root:(1487,535),
    state 0x10, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
    XLookupString gives 1 bytes: (1b) ""

Nesse caso, a Esctecla (código 9) usa o nome "Escape" .

  • Pressione a Caps Locktecla

Desta vez, estamos procurando o código de chave que Caps Lockestá usando.

Novamente, observe a terceira linha:

KeyRelease event, serial 32, synthetic NO, window 0x4c00001,
    root 0x256, subw 0x0, time 94702774, (862,151), root:(1733,613),
    state 0x10, keycode 66 (keysym 0xffe5, Caps_Lock), same_screen YES,
    XKeysymToKeycode returns keycode: 9
    XLookupString gives 1 bytes: (1b) ""

Usando xmodmap

Agora que obtivemos as informações sobre as chaves das quais desejamos mudar xev, usaremos xmodmappara modificar os mapas de teclas. No terminal de comando ( Ctrl+ Alt+ t), execute os seguintes comandos:

  • Este comando modifica o Caps Lockpara usar o mesmo comportamento queEsc

    xmodmap -e "keycode 66 = Escape"
    
  • Esta opção imprime uma tabela de mapa de teclas como expressões no arquivo ~/.Xmodmap

    xmodmap -pke > ~/.Xmodmap
    

Ative as alterações (somente para esta sessão de login) com o seguinte comando:

xmodmap ~/.Xmodmap

Tornando as alterações persistentes nas reinicializações:

  • Se não existir, crie um arquivo na sua pasta pessoal chamado .xinitrc.

    touch .xinitrc
    
  • Coloque a seguinte linha no arquivo e salve o arquivo:

    xmodmap ~/.Xmodmap
    

Modificando chaves com diferentes comportamentos de estado

(como Num Lock)

  • Obtenha a tabela de mapa de teclas para as teclas modificadoras (saída abreviada aqui)

    $ xmodmap -pm
    shift       Shift_L (0x32),  Shift_R (0x3e)
    mod2        Num_Lock (0x4d)
    

Se você quiser alterar, por exemplo, o comportamento do período ativado Del/ Periodtecla no teclado numérico, para vírgula, use o seguinte comando:

xmodmap -e "keycode 91 mod2 = KP_Delete comma"

Observe que isso está usando o mod2mapeamento de teclas para alterar o comportamento das teclas quando o modificador Num Locké pressionado. A sintaxe para isso é:

xmodmap -e "<KEYCODE> <MODIFIER> = <behaviour> <behaviour_with_modifier>"

Recurso

Kevin Bowen
fonte
2
+1! Eu tenho um atm de teclado coreano sem a tecla alt-gr e precisava dele, então sua resposta foi muito útil para fazê-lo funcionar. Para referência futura, e como a tecla alt-gr não é a mais simples de configurar, aqui está o comando (usei a chave hanja, que tem o código 130): xmodmap -e "keycode 130 = ISO_Level3_Shift Multi_key ISO_Level3_Shift Multi_key"
Shautieh 23/02
43

Por padrão (isso serve apenas para complementar a resposta Excelente de Seth), o Ubuntu (neste exemplo, estou usando o 16.04) tem 2 categorias que vêm por padrão nas Configurações do sistema:

Para acessar as Configurações do sistema, no canto superior direito, clique no ícone de engrenagem :

insira a descrição da imagem aqui

Em seguida, selecione Configurações do sistema :

insira a descrição da imagem aqui

Aqui você encontrará 2 opções que podem ser enviadas para a seção Criação de atalhos.

insira a descrição da imagem aqui

Se você selecionar Entrada de texto, deverá selecionar o link Configurações do teclado no canto inferior direito, que o enviará diretamente para as opções de atalhos.

insira a descrição da imagem aqui

Se você selecionar a opção Teclado , teria que clicar na guia Atalhos

insira a descrição da imagem aqui

Depois de chegar às guias Atalhos, você selecionaria os Atalhos personalizados na parte inferior da lista no lado esquerdo:

insira a descrição da imagem aqui

E, em seguida, clique no sinal de mais na parte inferior para começar a criar seu próprio atalho:

insira a descrição da imagem aqui

A partir daí, basta adicionar o nome do atalho (não confunda o nome do atalho, para o nome do comando real que você estará executando). E abaixo, no campo Comando, é onde você colocará qual comando será executado para este atalho. No exemplo a seguir, nomeei o atalho "Sublime Text 3" para saber a que se refere esse atalho específico. E no campo de comando eu adicionei o comando real, que é subl.

insira a descrição da imagem aqui

Você terminará com o seguinte na tela que mostra que, como o atalho ainda não possui uma tecla ou combinação de teclas atribuída, ele está Desabilitado por padrão:

insira a descrição da imagem aqui

Em seguida, clicamos na mensagem "Desativado" para adicionar uma combinação de teclas:

insira a descrição da imagem aqui

Nesta parte, atribuo a combinação de teclas SHIFT+ CTRL+ Spara que, ao pressionar essa combinação, abra o aplicativo Sublime Text.

insira a descrição da imagem aqui

Depois disso, você pode simplesmente testar sua combinação pressionando a combinação de teclas correspondente e vendo o aplicativo aberto:

insira a descrição da imagem aqui

NOTA: Para combinações especiais como a que mata o servidor X, sugiro visitar o seguinte link: Como habilitar Ctrl-Alt-Backspace para matar o servidor X?

Luis Alvarado
fonte
Estou na 13.10 e não tenho esse ícone 'Entrada de texto' nas configurações do sistema. :(
wim
Oi wim, você pode fornecer um link para uma imagem que mostra as configurações do sistema.
Luis Alvarado
2
Infelizmente agora que estamos em 15.04, essa resposta é uma bagunça. O Layout do teclado desapareceu e, com ele, a capacidade de matar o X Server. As capturas de tela combinam as capturas de tela anteriores a 13.04 (quem se importa!?!) E posteriores, e alguém as inseriu no lugar errado, então "clique nas Opções no canto inferior direito)" está longe de ser a captura de tela obsoleta. :-(
skierpage
@skierpage Foi por isso que fiz esta resposta: askubuntu.com/questions/367983/… espero que ajude.
Luis Alvarado
If you click on the Options button at the bottom right (Found on 13.04 or previous versions)...Onde está o botão de opções nas versões> 13.04?
Dinosaur
21

Vá para Configurações do sistemaKeboard , selecione a guia Atalhos e adicione um novo atalho personalizado para o seu navegador. Se o seu brouser padrão for o Firefox, use firefoxfor no campo de comando; se o seu brouser padrão for o Firefox, use chromium-browsere assim por diante:

adicionar atalho personalizado

Radu Rădeanu
fonte
Obrigado. Veja também minha própria resposta para algumas peculiaridades sobre como realmente definir as chaves. Me deixou confuso no começo, mesmo estando no lugar certo.
Michael Durrant
2
Mas isso não funciona no meu caso. O Ubuntu (por algum motivo) não me permite definir as teclas de atalho! Eu segui até a etapa 4 (como mostrado na foto). Estou perdendo alguma coisa?
Vaibhav Kaushal
2
Prefiro essa resposta às disponíveis na pergunta duplicada.
Sr. B
3
@VaibhavKaushal: no Passo 5, você tem que clicar sobre o botão direito em "desativado", em seguida, fazer o atalho que você gosta, que será mostrado lá imediatamente
rubo77
A reinicialização pode ser necessária para que as alterações entrem em vigor
Shirley Temple
18

Você pode criar atalhos de teclado complexos (várias teclas) instalando o AutoKey a partir do centro de software. Ao contrário do xmodmap, o AutoKey não liga novamente as teclas reais do teclado; ele é executado em segundo plano e intercepta os atalhos de teclado definidos e envia pressionamentos de tecla simulados para seus aplicativos.

Na primeira vez em que você inicia o AutoKey, ele inicia o serviço em segundo plano (o ícone de notificação não foi atualizado para a unidade, portanto, não há indicação visual). Quando estiver em execução, você poderá abrir a interface de configuração executando o iniciador novamente:

insira a descrição da imagem aqui

Agora abra Editar> Preferências e selecione "Iniciar automaticamente a AutoKey no login" para garantir que seus atalhos funcionem sempre que você estiver conectado.

Mapeando um atalho de teclado para outro atalho de teclado

  1. Selecione Arquivo> Novo> Frase.
  2. Verifique se "Colar usando" está definido como "Teclado".
  3. Digitar as teclas que deseja mapear a na caixa de texto.

    • Teclas especiais (sem caracteres) são representadas com os códigos documentados aqui .
    • Se você digitar várias chaves, elas serão enviadas em sequência, a menos que você as coloque +(por exemplo <ctrl>+c, copie na maioria dos aplicativos; <ctrl>+c<ctrl>+n<ctrl>+vcrie um novo documento contendo a seleção; <shift>+ubuntudigite o texto "Ubuntu")
  4. Pressione o botão "Definir" ao lado de "Tecla de atalho". Isso fará com que uma janela que permite determinar a combinação de teclas que pretende mapear a partir de :

    insira a descrição da imagem aqui

  5. Selecione Arquivo> Salvar

Um exemplo de configuração concluída (que é enviada <enter>quando você pressiona <ctrl>+m) se parece com isso:

insira a descrição da imagem aqui

cscarney
fonte
Nota: Atualmente, o Debian (onde o Ubuntu obtém o pacote AutoKey) não está mantendo o pacote AutoKey. Para obter instruções de instalação atuais, consulte: github.com/autokey/autokey/wiki/Installing
Joe
15

Tente o seguinte:

Instale um programa chamado XKeyCaps. Para instalar, basta pressionar Ctrl+ Alt+ Tno teclado para abrir o Terminal. Quando abrir, execute o (s) comando (s) abaixo:

sudo apt-get install xkeycaps

Uma vez instalado, você pode executar xkeycaps no prompt para executar o programa. Depois de executado, escolha o layout de teclado correto e clique em OK

insira a descrição da imagem aqui

Então, quando você colocar o teclado na tela, clique com o botão direito do mouse na tecla desejada, no seu caso S, e escolha as teclas de troca.

insira a descrição da imagem aqui

Adicione a linha abaixo às suas sessões para que ela seja iniciada automaticamente sempre que você inicializar.

xmodmap ~/.xmodmap-`uname-n`

Fonte: UFM ytsejam1138

Mitch
fonte
É uname-nsuposto ser uname -n?
wjandrea
De acordo com a fonte é unmae-n. Não tenho acesso a uma máquina Ubuntu para testar, mas assim que fizer isso, verificarei mais.
Mitch
8

Se você deseja remapear as chaves, as outras respostas são ótimas.

No entanto, há outra maneira de abordá-lo. O AutoKey é um processador de macro para teclado que permite associar qualquer combinação de teclas / modificadores a um script que pode fazer quase tudo o que você pode fazer com o teclado e muito mais.

O AutoKey possui um gravador de scripts e uma maneira simples de inserir seqüências básicas de teclas, mas seus scripts são escritos em Python e podem fazer quase qualquer coisa que você possa codificar.

A maneira mais simples de usá-lo é enviando pressionamentos de teclas para seus aplicativos / desktop. Quando usados ​​dessa maneira, o sistema / aplicativos não pode dizer que não é você que está digitando; portanto, não há API ou outra interface necessária, eles apenas fazem o que "você" digitou.

O AutoKey também pode processar frases. Quando você digita uma cadeia de caracteres acionadora, ela pode substituir o novo texto por essa cadeia (imediatamente ou depois de digitar um caractere separador, como uma nova linha ou guia).

Ele também possui filtros de janela para que você possa restringir uma frase ou script específico para executar apenas em tipos específicos de janelas (como as que têm Mozilla no título, para que funcionem apenas em coisas como Firefox ou Thunderbird).

O AutoKey atualmente possui as versões Gtk e Qt.

Editar% s:

Guia de instalação

Fórum do usuário Fórum ativo do usuário.

Existem vários exemplos de scripts no wiki. Como é principalmente um aplicativo GUI com muitas opções, os exemplos exigiriam muitas capturas de tela e um artigo inteiro.

Eu tenho uma frase definida para que, quando eu digitar " Jmail! ", Ela a substitua instantaneamente pelo meu endereço de email bastante longo.

Eu escrevi um script que é acionado digitando Ctrl- Pque só é ativo nas janelas que têm "Mozilla" no título. Digitação Ctrl- Pabre a caixa de diálogo de impressão (Firefox ou Thunderbird), seleciona Imprimir em arquivo e preenche o nome do próximo arquivo de impressão disponível na minha fila de impressão (os numero 01, 02, ... e o script lê a fila diretório, localiza o último número do arquivo e o incrementa em 1). Eu o uso com meu software de emulação de impressão duplex ( duplexpr ) para eliminar uma tonelada de pressionamentos de tecla e movimentos do mouse.

Eu já vi outros scripts de jogadores que permitem acessar informações sobre seus personagens e recursos muito rapidamente, para que possam se concentrar na ação.

Joe
fonte
1
Você poderia adicionar algumas informações sobre a instalação e talvez usá-lo também? Isso seria demais!
Seth
O AutoKey foi parcialmente migrado do code.google para o GitHub. Consulte github.com/autokey/autokey . Há também uma ramificação do Python 3 - github.com/guoci/autokey-py3 .
31516 Joe
A versão atual do AutoKey está em github.com/autokey/autokey A ramificação do Python 2 foi depreciada.
Joe
7

USANDO CHAVES DE TECLADO COMO BOTÕES DO MOUSE

Você pode mapear uma tecla do teclado para um botão do mouse. Se você deseja clicar usando uma tecla do teclado (útil se você tiver um macbook ou um botão incorreto no trackpad), faça o seguinte.

  1. instale alguns utilitários:

    sudo apt-get install x11-utils xkbset x11-xserver-utils
    
  2. encontre o código da chave que você deseja mapear:

    • digite xev | grep keycodeno terminal
    • pressione a tecla de interesse e uma linha como esta aparecerá:

      state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,  
      
  3. usando o código da tecla, remapeie a tecla para fazer o mesmo que o botão esquerdo do mouse:

    • xkbset m
    • xmodmap -e "keycode 64 = Pointer_Button1"

Pointer_Button3é o botão direito do mouse e Pointer_Button2é o meio.

krumpelstiltskin
fonte
4

Usando xkb

xkbé a extensão do teclado X. É responsável por mapear as teclas do teclado para a função designada. xkbsímbolos podem ser encontrados em/usr/share/X11/xkb/symbols/ . As teclas modificadoras são mapeadas /usr/share/X11/xkb/symbols/pc.

Digamos, eu preciso mudar as funções das teclas Caps Locke Left Control. Essas alterações são necessárias no pcarquivo:

key <CAPS> {        [ Control_L             ]       };
key <LCTL> {        [ Caps_Lock             ]       };

Para aplicar os novos mapeamentos, você precisa limpar o xkbcache de /var/lib/xkb:

rm -rf /var/lib/xkb/*

Agora, basta reiniciar sua sessão X e você estará pronto.

Fonte: https://radu.cotescu.com/remapping-keys-in-ubuntu-14.04/

Edit: Fazer um lsdentro do symbolsdiretório fornece isso:

af        cm            gn       kz              nec_vndr    sk
al        cn            gr       la              ng          sn
altwin    compose       group    latam           nl          sony_vndr
am        ctrl          hp_vndr  latin           no          srvr_ctrl
apl       cz            hr       level3          nokia_vndr  sun_vndr
ara       de            hu       level5          np          sy
at        digital_vndr  ie       lk              olpc        terminate
az        dk            il       lt              pc          th
ba        ee            in       lv              ph          tj
bd        empty         inet     ma              pk          tm
be        epo           iq       macintosh_vndr  pl          tr
bg        es            ir       mao             pt          tw
br        et            is       md              ro          typo
brai      eurosign      it       me              rs          tz
bt        fi            jp       mk              ru          ua
bw        fo            ke       ml              rupeesign   us
by        fr            keypad   mm              se          uz
ca        fujitsu_vndr  kg       mn              sgi_vndr    vn
capslock  gb            kh       mt              sharp_vndr  xfree68_vndr
cd        ge            kpdl     mv              shift       za
ch        gh            kr       nbsp            si

Os mapeamentos dentro do arquivo rusão baseados no teclado padrão russo. A macintosh_vndrpasta contém os mapeamentos para teclados da Apple. Em poucas palavras, essa abordagem é muito versátil. Vá em frente e brinque com ele :)

crisron
fonte
Você mencionou 2 arquivos. Para qual arquivo as alterações são feitas? :)
Seth
Eu mencionei apenas um arquivo - /usr/share/X11/xkb/symbols/pc.
Cris15
Minha culpa. Dei uma segunda olhada para perceber que o primeiro caminho era uma pasta, não um arquivo. Editado para torná-lo um pouco mais óbvio :)
Seth
3

Descobriu-se que está sob o aplicativo 'teclado'.

Se você mencionar isso, poderá alterar os atalhos conforme necessário ...

a mudança é um pouco estranha no primeiro uso. Você clica à direita (a coluna que tem ctrl-alt-T, Desativado, etc., em seguida, clica nas teclas reais, por exemplo, ctrlaltba desejada. Você verá a nova sequência de teclas aparecer agora nesse espaço. Feche a janela ( ou clique fora) e o novo atalho agora funcionará.

Michael Durrant
fonte
1

O atalho já existe como WWW, basta alterá-lo para Ctrl+ Alt+ b. Não há necessidade de criar um novo.

insira a descrição da imagem aqui

Mitch
fonte
1

Gerenciador de configurações CompizConfig (CCSM)

O CCSM permite alterar alguns atalhos de teclado do sistema.

Para instalá-lo, use o Centro de Software ou este comando:

sudo apt-get install compizconfig-settings-manager

Por exemplo

Usei-o para alterar o atalho "Window spread" do padrão Super+ Wpara Super+ Tab, como no Windows 10. Da minha resposta em outro tópico :

  1. Execute o CCSM a partir do Dash.
  2. Vá para Gerenciamento de janelas -> Escala -> guia Ligações -> Iniciar o Selecionador de janelas
  3. Clique no atalho do teclado ( <Super>wno seu PC, mas <Super>Tabnesta captura de tela).

    CCSM - Gerenciamento de janelas - Escala

  4. Clique na combinação de teclas Pega , pressione a (s) tecla (s) desejada (s) e clique em OK.

    Editar Iniciador de Janela Selecionador

wjandrea
fonte
1

Eu queria pressionar Print Screen para salvar uma captura de tela usando o gnome-screenshotaplicativo, como no Mint

Mas eu queria fazê-lo usando o terminal, não a GUI, pois quero torná-lo padrão ao criar um ISO personalizado usando squashfsferramentas.

Primeiro instalei o gnome-screenshot usando o comando

sudo apt-get install gnome-screenshot

Em seguida, atribuai o atalho personalizado usando Configurações -> Teclado -> Atalhos personalizados -> botão Adicionar (+) ->

Na caixa de diálogo:

  • Nome: Captura de tela
  • Comando: gnome-screentshot

Pressione o botão Adicionar

Então pressione a Print screentecla

A chave está agora vinculada e eu posso salvar as capturas de tela conforme necessário.
Mas não usando terminal, é a maneira da GUI

Então eu instalei dconf-editorusando

sudo apt-get install dconf-editor

E pesquise por gnome-screenshot
encontrar minhas associações de teclas personalizadas neste caminho

/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/

Os valores das chaves são:

  • encadernação 'Imprimir'
  • comando 'gnome-screenshot'
  • nome 'tela de impressão'

Agora eu os copio e excluo a tecla de atalho personalizada da GUI

Abro o terminal e digito esses comandos

dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/command "'gnome-screenshot'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/binding  "'Print'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/name "'print screen'"

E voila

Agora eu posso salvar capturas de tela sem qualquer GUI apenas usando dconfe terminal. Também não preciso dconf-editormais, ele foi instalado para obter os valores.

Subhani Minhas
fonte
1

Eu tentei a solução de Kevin (a abordagem xmodmap) no ubuntu 18.04. Não funcionou no meu caso. No entanto, esse procedimento fez com que funcionasse finalmente:

  • copiar xmodmap .Xmodmapem um arquivo chamado em .xsessionvez de .xinitrc.
  • altere as permissões do arquivo (clique com o botão direito do mouse, propriedades, guia permissão, altere as permissões para "ler e escrever" e marque a caixa na janela)
  • adicione um aplicativo de inicialização com /home/<YOUR_USER_NAME>/.xsessiono comando as.
arash
fonte