Comment remapper mes raccourcis clavier Ubuntu pour qu'ils correspondent à OSX?

28

J'utilise Ubuntu dans VirtualBox sur Mac. Comme je change fréquemment, j'aimerais utiliser les mêmes raccourcis. S'il vous plaît, quelqu'un sait-il comment avoir les mêmes raccourcis sur Ubuntu que sur Mac? Plus précisément, je voudrais copier, coller, sélectionner tout, ... travailler avec Cmd + C, Cmd + V, Cmd + A, ... (même dans le terminal - pas de Ctrl + Maj, juste Ctrl).

J'ai essayé de changer la disposition du clavier en ordinateur portable Apple, mais cela n'a pas aidé.

user209499
la source
La touche Cmd est-elle l'alternative à Ctrl ou Alt?
Seth
Si je me souviens bien, Cmd est égal à ctrl.
Kaz Wolfe
2
cmd est égal à la touche de fonction Windows (tandis que la touche cmd est à côté de la barre d'espace). La plupart du temps, entre ctrl et alt.
velop

Réponses:

8

ne pourriez-vous pas ajouter des raccourcis personnalisés ?? Si cela n'était pas possible ou ne fonctionnait pas, vous pourriez vouloir changer les raccourcis clavier de votre vmbox. Vous devrez effectuer les opérations suivantes:

Installer xbindkeys

sudo apt-get install xbindkeys

Xbindkeys est un programme très polyvalent qui vous permet de remapper des clés très facilement. Il utilise un fichier de configuration, ma valeur par défaut située dans votre répertoire personnel, pour changer les raccourcis clavier en certaines commandes.

Pour créer un fichier de configuration par défaut, vous utilisez la commande:

xbindkeys --defaults

Qui imprime le fichier de configuration par défaut. Donc, si vous souhaitez créer le fichier contenant les valeurs par défaut, vous utiliseriez:

xbindkeys --defaults > $HOME/.xbindkeysrc

Qui imprime les valeurs par défaut dans un fichier caché nommé .xbindkeysrc situé dans la maison.

Maintenant, pour changer réellement les liaisons de clés, nous devons d'abord savoir quel est le nom ou la clé de ces clés. xbindkeys nous permet d'utiliser la poignée -k pour trouver le nom d'une touche ou d'une combinaison de touches. Courir:

xbindkeys -k

Maintenant, appuyez sur ctrl (de cmd) et vérifiez la sortie

Essayez d'appuyer sur ctrl + c (après avoir désactivé ce raccourci dans le terminal à l'aide de la deuxième partie de cette explication)

Il vous indiquera le nom de la combinaison touche / touche.

Maintenant, nous devons dire à Linux d'appeler cmd lorsque ctrl est pressé.

pour cela, nous aurons besoin d'un logiciel supplémentaire car xbindkeys ne le supporte pas seul. Je connais deux programmes que nous pouvons utiliser, xdotool et xte. Je préfère xte donc je vais l'utiliser.

Installez-le:

sudo apt-get install xautomation

(Pour appeler une seule touche, appuyez sur: xte 'key keyName'

Pour appeler une combinaison de touches: xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName

Pour plus d'informations, vous pouvez lire le manuel man xte )

Permet d'ouvrir le fichier de configuration que vous avez créé précédemment: (celui que vous avez créé en utilisant xbindkeys --defaults > $HOME/.xbindkeysrc)

gedit .xbindkeysrc

Vous obtiendrez quelque chose comme ceci:

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

Plus tôt, vous avez extrait la combinaison clé / clé. maintenant que vous connaissez la commande pour simuler les pressions sur les touches, vous pouvez l'appeler à partir de votre script xbindkeys, comme ceci:

"xte 'ctrl'" Cmd (ou quelque chose comme ça dépendait du nom que vous a donné xbindkeys)

Ajoutez-le à votre script xbindkeys et enregistrez-le.

Vous remarquerez que cela ne fonctionne pas (encore). C'est parce que xbindkeys n'est pas encore en cours d'exécution. démarrez-le avec la commande suivante.

xbindkeys

Vos commandes devraient fonctionner maintenant. Si cela ne fonctionne pas, vous voudrez peut-être essayer d'ajouter des commandes à vos combinaisons de touches comme le copier-coller. Si cela ne fonctionne pas non plus, il existe une alternative, mais c'est beaucoup d'écriture. Vous pouvez également essayer xmodmap ou xkeycaps.

Je voudrais noter que xbindkeys et xte ne fonctionnent pas toujours bien ensemble.

Quant aux raccourcis de votre terminal: vous pouvez les changer TOUS en ouvrant votre terminal et en cliquant sur modifier dans la barre supérieure. Cliquez ensuite sur les raccourcis clavier et modifiez la valeur du copier-coller sous l'en-tête "modifier" en ctrl (ou dans votre cas cmd) + c et ctrl + v

Akisame
la source
2
ce sont des solutions pour résoudre votre problème à l'intérieur de la vmbox. Vous pourriez être en mesure d'échanger certains codes clés en configurant une table d'échange de codes clés dans votre vmbox, mais je n'ai aucune expérience avec les vmbox
Akisame
C'est aussi proche que possible d'avoir des liaisons mac sur linux. Cependant, il semble que xte 'key Home'cela ne fonctionne pas lorsqu'il est lié à une frappe dans le fichier .xbindkeysrc. J'ai essayé une variété comme "Shift + i". Je l'ai également vu fonctionner en faisant `sleep 15 && xte 'key Home'" (passer à gedit et voir le travail à domicile). du curseur. Une assistance à ce sujet? gist.github.com/Kikketer/658d89661a044121279afbba04a511fa
Chris
8

Il n'est pas nécessaire d'utiliser xbindkeyspour réaliser un mappage de clavier de type OSX sur Ubuntu. Il s'agit d'une option intégrée:

  1. Allez dans vos paramètres Ubuntu
  2. Accédez à ClavierParamètres de disposition du clavier
  3. ajouter l' anglais (Macintosh)
boulder_ruby
la source
7
Je ne vois pas Keyboard Layout Settingssur Ubuntu 14.0.4
chovy
Cela ne fonctionne pas sur VirtualBox. Tout ce que j'ai obtenu, c'est une fenêtre rétrécie lorsque j'ai essayé de copier / coller.
chovy
lol, après tant de temps à essayer toutes les autres solutions, celle-ci est si facile et a fonctionné immédiatement. (Ubuntu 14.04.3 LTS 64bit dans VirtualBox 5.0.4). Merci
Allisone
Cela ne fonctionne pas pour moi, sur virtualbox.
Peter Brooks
3
Cette réponse ne fonctionne clairement plus pour les nouvelles versions d'Ubuntu. Quelle que soit la dernière version d'Ubuntu en 2014, cela a fonctionné pour cela.
boulder_ruby
3

Il s'agit d'une réponse mise à jour pour toute personne aux prises avec ce problème avec des versions plus récentes d'Ubuntu.

Je viens d'installer Ubuntu 16.04.1 via VirtualBox et je n'ai pas pu obtenir les paramètres du clavier correspondant à mon MacBook.

Voici ce que j'ai fait pour y remédier:

  1. Accédez aux paramètres système .
  2. Sélectionnez la saisie de texte (c'est-à-dire pas le clavier ).
  3. Sous la liste avec l'en-tête Sources d'entrée à utiliser: il y a un signe plus et un signe moins - cliquez sur le signe plus.
  4. Dans la zone de texte sous Choisir un type de source d'entrée dans la disposition du clavier dont vous avez besoin (dans mon cas, je choisis l'anglais (Royaume-Uni, macintosh).
  5. Utilisez la flèche vers le haut pour en faire votre disposition de clavier par défaut sur Ubuntu.
  6. Supprimez les autres dispositions de clavier. Ce n'est que lorsque j'ai supprimé les autres dispositions que les modifications sont entrées en vigueur.
David Brower
la source
1
Quel en est l'effet? Par exemple, la touche de contrôle sur un Macintosh est au même endroit que sur un clavier normal. Étant donné que ctrl-c / v restent les commandes de copie et de collage par défaut du système, cela ne répondra pas à la question initiale de remapper ces sortes de raccourcis à l'échelle du système afin d'imiter un Mac.
Coljac
2

Je suis sur Ubuntu 16.04, VirtualBox 5.1.22 et aucune de ces réponses n'a fonctionné pour moi - y compris malheureusement celle de David Brower .

Voici ce qui a fait pour que ma clé de commande OSX gauche fonctionne (de manière persistante!):

  1. Vous devez d'abord vous assurer que VirtualBox n'utilise pas Left ⌘ comme clé d'hôte
    • Dans la barre de menu supérieure de votre fenêtre VM, sélectionnez Input > Keyboard > Keyboard Settings..
    • Dans la liste des paramètres, recherchez Combinaison de touches hôte et changez le raccourci en autre chose que Left ⌘ (je viens d'utiliser Right ⌘ car je ne l'utilise jamais).
  2. Maintenant que vous pouvez certainement utiliser le Left ⌘ dans l'environnement VM, remappez les clés avec XKB:
    • Ouvrez et éditez (soigneusement): /usr/share/X11/xkb/symbols/pc
    • J'ai simplement échangé <LCTL>et <LWIN>autour, donc ça ressemble à ceci:
    • key <LCTL> { [ Super_L ] };
    • key <LWIN> { [ Control_L ] };
  3. Désactivez maintenant les anciens mappages du cache xkb:
    • rm -rf /var/lib/xkb/*
  4. Redémarrez ubuntu pour que les modifications prennent effet.

Un mot d'avertissement: j'éviterais de faire plus d'un changement à la fois via xkb à moins que vous ne sachiez vraiment ce que vous faites, quelques clés mal mappées en même temps pourraient être un vrai casse-tête!

Plein crédit à Radu Cotescu pour le xkb instructions remappant - ils étaient pour ubuntu 14.04, mais ils fonctionnent très bien pour ubuntu 16.04.

danwild
la source
Assurez-vous de prendre un instantané avant de faire cela! Heureusement, j'avais un autre objectif, et après avoir fait cela, Ubuntu ne démarrerait pas correctement. Je suis revenu et ça a recommencé à fonctionner. J'utilise 18.04 pour ce que ça vaut.
Tom
2

En cherchant dans d'autres questions, j'ai trouvé cet outil pour mapper le Ctrl sur le clavier du Macbook CMD Gauche pour faire CMD + C ou CMD + V ou autre chose:

Installez l'application gnome-tweaks:

sudo apt-get install gnome-tweaks

Ouvrez l'application Applications -> Gnome Tweakset mappez le CTRL à WIN (comme CMD dans Mac) en procédant comme suit:

  1. Clavier et souris
  2. Options de mise en page supplémentaires (Super gauche)
  3. Comportement des touches Alt / Win
  4. Ctrl est mappé sur Win et les touches Ctrl habituelles`

Profitez CMD + C or CMD + Vde votre OSX VirtualBox en utilisant ubuntu-18 VM.

Hemã Vidal
la source
Travaillé. <filler>
skwny
Cela m'a perdu la possibilité d'utiliser la clé Win / Apple. Au lieu de cela, je l' ai fait ce qui suit pour l' étape 3 et 4: (3) Ctrl position, (4) Swap Left Win with Left Ctrl.
Turgs
0

J'utilise toujours Ubuntu 12.04 pour diverses raisons, donc je ne peux pas parler d'itérations ultérieures, mais essayez ceci:

D'accord, tout d'abord, vous voudrez peut-être définir votre clé d'hôte VB sur quelque chose de spécifique, comme la bonne commande ou la bonne touche alt ... quelque chose que vous n'utilisez pas normalement. Je pense que la valeur par défaut est la touche de commande gauche, qui va interférer avec les opérations de la plupart des gens.

Cela peut être fait dans les préférences de VirtualBox lui-même (plutôt qu'à l'intérieur de la machine invitée ou comme tout paramètre spécifique à la machine). Avec l'application VB ouverte (pas la fenêtre VM), choisissez VirtualBox-> Préférences-> Entrée, puis sélectionnez la clé d'hôte en tête du champ / liste de mappage "Machine virtuelle".

D'accord, après cela, à l'intérieur de la machine invitée Ubuntu elle-même:

  1. Ouvrez vos paramètres système et choisissez Disposition du clavier.
  2. Ouvrez l'onglet Disposition.
  3. Vous n'aurez probablement qu'une seule entrée - anglais (États-Unis) ou quelque chose comme ça. Mettez-le en surbrillance et cliquez sur le bouton "Options" en bas à droite.
  4. Ouvrez l'expanseur "Alt / Win Key Behavior".
  5. Choisissez "Le contrôle est mappé sur les touches Win (et les touches Ctrl habituelles)".

Vous devriez constater que votre touche de commande Mac fonctionne maintenant comme vous le souhaitez pour command-C, command-V, etc.

Kaitain
la source
0

Dans le cas de Kubuntu 18.04 avec Plasma 5, ce qui a fonctionné pour moi a été (dans Paramètres système / Périphériques d'entrée / Claviers) de définir le matériel comme «Générique 104 touches» et la disposition comme «Anglais (macintosh)».

lurscher
la source
-1

Cela dépendra du logiciel que vous utilisez pour exécuter votre machine virtuelle. Par exemple, j'utilise VMWare Fusion pour exécuter Ubuntu sur mon Mac et pour obtenir ce que vous voulez, je suis allé dans "Paramètres" de VMWare Fusion et configurer le mappage de touches que je voulais à l'intérieur de cette machine virtuelle spécifique (je peux avoir plusieurs configurations, une pour chaque VM).

Je n'ai jamais utilisé VirtualBox, mais je suis sûr que vous pouvez le faire dans les paramètres de VirtualBox.

David Lopes
la source