Como eu remapear meus atalhos de teclado do Ubuntu para corresponder ao OSX?

27

Estou usando o Ubuntu no VirtualBox no Mac. Como eu mudo frequentemente, eu gostaria de usar os mesmos atalhos. Por favor, alguém sabe como ter os mesmos atalhos no Ubuntu, como eles estão no Mac? Especificamente, eu gostaria de copiar, colar, selecionar tudo, ... trabalhar com Cmd + C, Cmd + V, Cmd + A, ... (mesmo no terminal - não Ctrl + Shift, apenas Ctrl).

Tentei alterar o layout do teclado para o Apple Laptop, mas isso não ajudou.

    
por user209499 30.10.2013 / 12:03

8 respostas

8

você não poderia adicionar atalhos personalizados? Se isso não foi possível ou não funcionou, você pode querer alterar as combinações de teclas do seu vmbox. Você precisará fazer o seguinte:

Instale xbindkeys

sudo apt-get install xbindkeys

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

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

xbindkeys --defaults

Que imprime o arquivo de configuração padrão. Então, se você quiser criar o arquivo contendo os valores padrão que você usaria:

xbindkeys --defaults > $HOME/.xbindkeysrc

Que imprime os valores padrão em um arquivo oculto chamado .xbindkeysrc localizado em casa.

Agora, para realmente alterar as ligações das chaves, primeiro precisamos saber qual é o nome ou o keysym dessas chaves. xbindkeys nos permite usar o manipulador -k para encontrar o nome de uma chave ou combinação de teclas. Executar:

xbindkeys -k

Agora pressione ctrl (de cmd) e verifique a saída

Tente pressionar ctrl + c (depois de desativar o atalho no terminal usando a segunda parte desta explicação)

Ele informará o nome da combinação de teclas / teclas.

Agora precisamos dizer ao linux para chamar o cmd quando o ctrl for pressionado.

para isso, precisaremos de um software extra, já que o xbindkeys não suporta isso por conta própria. Eu sei de dois programas que podemos usar, xdotool e xte. Eu prefiro xte, então eu vou usar isso.

Instale:

sudo apt-get install xautomation

( 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 mais informações, você pode ler o manual man xte )

Vamos abrir o arquivo de configuração que você fez anteriormente: (aquele que você fez usando xbindkeys --defaults > $HOME/.xbindkeysrc )

gedit .xbindkeysrc

Você terá algo assim:

#
# 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:

Anteriormente, você extraiu a combinação de teclas / chaves. Agora que você sabe o comando para simular pressionamentos de teclas, você pode chamá-lo de seu script xbindkeys, assim:

"xte 'ctrl'" Cmd (ou algo assim dependia do nome dado a você por xbindkeys)

Adicione isto ao seu script xbindkeys e salve-o.

Você notará que isso não funciona (ainda). Isso porque os xbindkeys ainda não estão em execução. comece com o seguinte comando.

xbindkeys

Seus comandos devem funcionar agora. Se não funcionar, talvez você queira tentar adicionar comandos às suas combinações de teclas, como copiar e colar. Se isso não funcionar, existe uma alternativa, mas isso é bastante escrito. Você também pode tentar xmodmap ou xkeycaps.

Eu gostaria de observar que xbindkeys e xte nem sempre funcionam bem juntos.

Quanto aos seus atalhos de terminal: Você pode alterá-los TODOS abrindo o seu terminal e clicando em editar na barra superior. Em seguida, clique em atalhos de teclado e altere o valor de copiar e colar sob o cabeçalho "editar" em ctrl (ou no seu caso cmd) + c e ctrl + v

    
por Arno van der Weijden 24.11.2013 / 02:32
7

Não é necessário usar xbindkeys para obter mapeamento de teclado semelhante ao OSX no Ubuntu. Esta é uma opção inata:

  1. Acesse as configurações do Ubuntu
  2. Navegue até Teclado Configurações de layout do teclado
  3. add inglês (Macintosh)
por boulder_ruby 07.03.2014 / 20:10
3

Esta é uma resposta atualizada para qualquer um que esteja enfrentando esse problema com versões mais recentes do Ubuntu.

Acabei de instalar o Ubuntu 16.04.1 através do VirtualBox e não consegui obter as configurações do teclado para corresponder ao meu MacBook.

Veja o que fiz para corrigir isso:

  1. Navegue até Configurações do sistema .
  2. Selecione Entrada de texto (ou seja, não Teclado ).
  3. Abaixo da lista com o cabeçalho Fontes de entrada a serem usadas: há um sinal de mais e um sinal de menos - clique no sinal de mais.
  4. Na caixa de texto sob o tipo Escolha uma fonte de entrada no layout do teclado que você precisa (no meu caso, eu escolho o inglês (UK, macintosh).
  5. Use a seta para cima para torná-lo seu layout de teclado padrão no Ubuntu.
  6. Remova os outros layouts de teclado. Não foi até que eu removi os outros layouts que as alterações entraram em vigor.
por David Brower 22.01.2017 / 21:40
2

Eu estou no Ubuntu 16.04, VirtualBox 5.1.22 e nenhuma dessas respostas funcionou para mim - incluindo David Brower infelizmente.

Veja o que fez para que minha chave de comando OSX da esquerda funcionasse (persistentemente!):

  1. Primeiro, você precisa garantir que o VirtualBox não esteja usando Left ⌘ como a Chave do host
    • Na barra de menu superior da sua janela de VM, selecione Input > Keyboard > Keyboard Settings..
    • Na lista de configurações, encontre Combinação de chaves do host e altere o atalho para algo diferente de Esquerda ⌘ (usei o botão direito ⌘ como nunca o uso).
  2. Agora que você pode definitivamente usar o Left ⌘ dentro do ambiente da VM, remapeie as chaves com o XKB:
    • Abra e edite com cuidado: /usr/share/X11/xkb/symbols/pc
    • Eu simplesmente troquei <LCTL> e <LWIN> por aí, então ficou assim:
    • key <LCTL> { [ Super_L ] };
    • key <LWIN> { [ Control_L ] };
  3. Agora limpe os mapeamentos antigos do cache de xkb:
    • rm -rf /var/lib/xkb/*
  4. Reinicie o Ubuntu para que as alterações entrem em vigor.

Palavra de aviso: eu evitaria fazer mais do que uma alteração de cada vez via xkb, a menos que você realmente saiba o que está fazendo, algumas chaves mapeadas incorretamente ao mesmo tempo podem ser uma verdadeira dor de cabeça!

Crédito total para Radu Cotescu para as instruções de remapeamento xkb - eles foram para o Ubuntu 14.04 , no entanto, eles funcionam bem para o Ubuntu 16.04.

    
por danwild 28.09.2017 / 05:52
0

Ainda estou executando o Ubuntu 12.04 por várias razões, por isso não posso falar por mais tarde, mas tente isto:

Ok, em primeiro lugar, você pode querer definir sua chave de host do VB para algo específico, como o comando correto ou a tecla alt direita ... algo que você não usa normalmente. Eu acho que o padrão é a tecla de comando à esquerda, que vai interferir nas operações da maioria das pessoas.

Isso pode ser feito nas preferências do próprio VirtualBox (em vez de dentro da máquina convidada ou como qualquer configuração específica da máquina). Com o aplicativo VB aberto (não a janela da VM), escolha VirtualBox-> Preferências- > Entrada, em seguida, selecione a chave do host no topo da lista de mapeamento / campo "Máquina Virtual".

Ok, depois disso, dentro da própria máquina convidada do Ubuntu:

  1. Abra as configurações do sistema e escolha Layout do teclado.
  2. Abra a guia Layouts.
  3. Você provavelmente terá apenas uma entrada - em inglês (EUA) ou algo assim. Realce isso e clique no botão "Opções" no canto inferior direito.
  4. Abra o expansor "Comportamento da chave Alt / Win".
  5. Escolha "O controle é mapeado para as chaves Win (e as teclas Ctrl usuais)".

Você deve descobrir que a sua chave de comando do Mac agora funciona como desejado para o comando-C, comando-V, etc.

    
por Kaitain 14.04.2016 / 21:25
0

Pesquisando em outras questões, encontrei essa ferramenta para mapear o Ctrl para o quadro-chave do Macbook CMD Left para fazer CMD + C ou CMD + V ou outra coisa:

Instale o aplicativo gnome-tweaks:

sudo apt-get install gnome-tweaks

Abra o aplicativo Applications -> Gnome Tweaks e mapeie a CTRL para WIN (Igual ao CMD no Mac):

  1. Teclado e mouse
  2. Opções adicionais de layout (Super esquerda)
  3. Comportamento da tecla Alt / Win
  4. Ctrl é mapeado para o Win e as teclas Ctrl usuais '

Aproveite o CMD + C or CMD + V no seu OSX VirtualBox usando o VM ubuntu-18.

    
por Hemã Vidal 10.09.2018 / 02:59
0

No caso do Kubuntu 18.04 com Plasma 5, o que funcionou para mim foi (Em Configurações do Sistema / Dispositivos de Entrada / Teclados) definindo o hardware como 'genérico de 104 teclas' e o layout como 'inglês (macintosh)'

    
por lurscher 10.10.2018 / 22:45
-1

Isso dependerá do software que você está usando para executar sua máquina virtual. Por exemplo, eu uso o VMWare Fusion para executar o Ubuntu no meu Mac e para conseguir o que você quer, eu fui para "Configurações" do VMWare Fusion e configurar o mapeamento de chaves que eu queria dentro daquela máquina virtual específica (eu posso ter várias configurações, uma para cada VM).

Eu nunca usei o VirtualBox, mas tenho certeza que você pode fazer isso nas configurações do VirtualBox.

    
por David Lopes 24.11.2013 / 01:38