Wie kann ich meine Ubuntu-Tastaturkürzel neu zuordnen, um sie an OSX anzupassen?

28

Ich benutze Ubuntu in VirtualBox auf dem Mac. Da ich häufig wechsle, möchte ich dieselben Verknüpfungen verwenden. Weiß jemand, wie man die gleichen Verknüpfungen auf Ubuntu hat wie auf dem Mac? Insbesondere möchte ich kopieren, einfügen, alle auswählen, ... mit Cmd + C, Cmd + V, Cmd + A, ... arbeiten (auch im Terminal - keine Strg + Umschalttaste, nur Strg).

Ich habe versucht, das Tastaturlayout auf Apple Laptop zu ändern, aber das hat nicht geholfen.

user209499
quelle
Ist die Befehlstaste die Alternative zu Strg oder Alt?
Seth
Wenn ich mich richtig erinnere, ist Cmd gleich Strg.
Kaz Wolfe
2
cmd entspricht der Windows-Funktionstaste (während sich die cmd-Taste neben der Leertaste befindet). Meistens zwischen Strg und Alt.
Velop

Antworten:

8

Konnten Sie keine benutzerdefinierten Verknüpfungen hinzufügen? Wenn dies nicht möglich ist oder nicht funktioniert hat, möchten Sie möglicherweise die Tastenkombinationen Ihrer vmbox ändern. Sie müssen Folgendes tun:

Installieren Sie xbindkeys

sudo apt-get install xbindkeys

Xbindkeys ist ein sehr vielseitiges Programm, mit dem Sie Schlüssel sehr einfach neu zuordnen können. Es verwendet eine Konfigurationsdatei, die sich standardmäßig in Ihrem Home-Verzeichnis befindet, um die Tastenzuordnungen in bestimmte Befehle zu ändern.

Um eine Standard-Konfigurationsdatei zu erstellen, verwenden Sie den Befehl:

xbindkeys --defaults

Welches druckt die Standard-Konfigurationsdatei. Wenn Sie also die Datei mit den Standardwerten erstellen möchten, verwenden Sie Folgendes:

xbindkeys --defaults > $HOME/.xbindkeysrc

Dadurch werden die Standardwerte in eine versteckte Datei mit dem Namen .xbindkeysrc gedruckt, die sich im Stammverzeichnis befindet.

Um nun die Tastenzuordnungen tatsächlich zu ändern, müssen wir zunächst den Namen oder das Tastensymbol dieser Tasten kennen. Mit xbindkeys können wir das -k-Handle verwenden, um den Namen eines Schlüssels oder einer Tastenkombination zu finden. Lauf:

xbindkeys -k

Drücken Sie nun die Strg-Taste (von cmd) und überprüfen Sie die Ausgabe

Versuchen Sie, Strg + C zu drücken (nachdem Sie diese Verknüpfung im Terminal mit dem zweiten Teil dieser Erklärung deaktiviert haben).

Hier erfahren Sie den Namen der Taste / Tastenkombination.

Jetzt müssen wir Linux anweisen, cmd aufzurufen, wenn Strg gedrückt wird.

Dafür benötigen wir eine zusätzliche Software, da xbindkeys dies nicht alleine unterstützt. Ich kenne zwei Programme, die wir verwenden können, xdotool und xte. Ich bevorzuge xte, also werde ich das benutzen.

Es installieren:

sudo apt-get install xautomation

(Um eine einzelne Taste anzurufen, drücken Sie: xte 'key keyName'

So rufen Sie eine Tastenkombination auf: xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName

Für weitere Informationen können Sie das Handbuch lesen man xte )

Öffnen Sie die zuvor erstellte Konfigurationsdatei: (die, die Sie mit erstellt haben xbindkeys --defaults > $HOME/.xbindkeysrc)

gedit .xbindkeysrc

Sie werden so etwas bekommen:

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

Zuvor haben Sie die Tastenkombination extrahiert. Nachdem Sie den Befehl zum Simulieren von Tastendrücken kennen, können Sie ihn wie folgt aus Ihrem xbindkeys-Skript aufrufen:

"xte 'ctrl'" Cmd (oder so etwas hing vom Namen ab, den Sie von xbindkeys erhalten haben)

Fügen Sie dies zu Ihrem xbindkeys-Skript hinzu und speichern Sie es.

Sie werden feststellen, dass es (noch) nicht funktioniert. Das liegt daran, dass xbindkeys noch nicht läuft. Starten Sie es mit dem folgenden Befehl.

xbindkeys

Ihre Befehle sollten jetzt funktionieren. Wenn es nicht funktioniert, können Sie versuchen, Ihren Tastenkombinationen Befehle wie Kopieren und Einfügen hinzuzufügen. Wenn das auch nicht funktioniert, gibt es eine Alternative, aber das ist ziemlich viel Schreiben. Sie können auch xmodmap oder xkeycaps ausprobieren.

Ich möchte darauf hinweisen, dass xbindkeys und xte nicht immer gut zusammenarbeiten.

Zu Ihren Terminal-Verknüpfungen: Sie können ALLE ändern, indem Sie Ihr Terminal öffnen und in der oberen Leiste auf Bearbeiten klicken. Klicken Sie dann auf Tastaturkürzel und ändern Sie den Wert für Kopieren und Einfügen unter der Überschrift "Bearbeiten" in Strg (oder in Ihrem Fall in cmd) + c und Strg + v

Akisame
quelle
2
Dies sind Lösungen, um Ihr Problem in der Vmbox zu beheben. Sie können möglicherweise bestimmte Keyscodes austauschen, indem Sie eine Keycode-Austauschtabelle in Ihrer vmbox einrichten, aber ich habe keine Erfahrung mit vmboxen
Akisame
Dies ist so nah wie noch nie zuvor, um Mac-Bindungen unter Linux zu bekommen. Es scheint xte 'key Home'jedoch nicht zu funktionieren, wenn es an einen Tastenanschlag in der .xbindkeysrc-Datei gebunden ist. Ich habe eine Variante wie "Shift + i" ausprobiert. Ich habe auch gesehen, wie es funktioniert, indem ich 'sleep 15 & xte' key Home '"gemacht habe (auf gedit umgeschaltet und die Arbeit zu Hause gesehen habe). Das meiste Feedback, das ich bekomme, wenn ich Dinge mit" Alt + Links "für zu Hause eingerichtet habe, ist ein Blitz Hilfe bei dieser Frage
Chris
8

Es ist nicht erforderlich, xbindkeysOSX-ähnliche Tastaturzuordnungen unter Ubuntu vorzunehmen. Dies ist eine eingebaute Option:

  1. Gehen Sie in Ihre Ubuntu-Einstellungen
  2. Navigieren Sie zu TastaturTastaturlayouteinstellungen
  3. Englisch hinzufügen (Macintosh)
boulder_ruby
quelle
7
Ich sehe nicht Keyboard Layout Settingsauf Ubuntu 14.0.4
Chovy
Dies funktioniert nicht auf VirtualBox. Alles, was ich bekam, war ein verkleinertes Fenster, als ich versuchte, zu kopieren / einzufügen.
Chovy
lol, nach so vielen Versuchen mit all den anderen Lösungen ist diese so einfach und funktioniert sofort. (Ubuntu 14.04.3 LTS 64bit in VirtualBox 5.0.4). Vielen Dank
Allisone
Das funktioniert bei mir auf virtualbox nicht.
Peter Brooks
3
Diese Antwort funktioniert eindeutig nicht mehr für neuere Versionen von Ubuntu. Was auch immer die neueste Version von Ubuntu im Jahr 2014 war, es hat dafür funktioniert.
Boulder_Ruby
3

Dies ist eine aktualisierte Antwort für alle, die mit diesem Problem mit neueren Versionen von Ubuntu zu kämpfen haben.

Ich habe gerade Ubuntu 16.04.1 über VirtualBox installiert und konnte die Tastatureinstellungen nicht an mein MacBook anpassen .

Folgendes habe ich getan, um das Problem zu beheben:

  1. Navigieren Sie zu Systemeinstellungen .
  2. Wählen Sie Texteingabe (dh nicht Tastatur ).
  3. Unterhalb der Liste mit der Überschrift Zu verwendende Eingabequellen: Es gibt ein Plus- und ein Minuszeichen - klicken Sie auf das Pluszeichen.
  4. Im Textfeld unter Wählen Sie einen Eingabequellentyp im gewünschten Tastaturlayout aus (in meinem Fall wähle ich Englisch (UK, Macintosh).
  5. Verwenden Sie den Aufwärtspfeil, um es zu Ihrem Standard-Tastaturlayout unter Ubuntu zu machen.
  6. Entfernen Sie die anderen Tastaturlayouts. Erst als ich die anderen Layouts entfernte, traten die Änderungen in Kraft.
David Brower
quelle
1
Was bewirkt das? Beispielsweise befindet sich die Steuertaste auf einem Macintosh an derselben Stelle wie auf einer normalen Tastatur. Da Strg-C / V immer noch die standardmäßigen Kopier- und Einfügebefehle des Systems sind, wird die ursprüngliche Frage der Neuzuordnung dieser Art von systemweiten Verknüpfungen nicht beantwortet, sodass sie einen Mac imitieren.
Coljac
2

Ich bin auf Ubuntu 16.04, VirtualBox 5.1.22 und keine dieser Antworten hat für mich funktioniert - auch die von David Brower leider.

Folgendes hat dazu beigetragen, dass meine linke OSX-Befehlstaste funktioniert (dauerhaft!):

  1. Zuerst müssen Sie sicherstellen, dass VirtualBox Left Left nicht als Host-Schlüssel verwendet
    • Wählen Sie in der oberen Menüleiste Ihres VM-Fensters Input > Keyboard > Keyboard Settings..
    • Suchen Sie in der Liste der Einstellungen die Option " Host- Tastenkombination" und ändern Sie die Verknüpfung auf einen anderen Wert als "Links" (ich habe gerade "Rechts" verwendet, da ich sie nie verwendet habe).
  2. Nachdem Sie die linke Maustaste in der VM-Umgebung definitiv verwenden können, ordnen Sie die Schlüssel mit XKB neu zu:
    • Öffnen und (sorgfältig) bearbeiten: /usr/share/X11/xkb/symbols/pc
    • Ich habe einfach getauscht <LCTL>und <LWIN>es sieht so aus:
    • key <LCTL> { [ Super_L ] };
    • key <LWIN> { [ Control_L ] };
  3. Löschen Sie nun die alten Zuordnungen aus dem xkb-Cache:
    • rm -rf /var/lib/xkb/*
  4. Ubuntu neu starten, damit die Änderungen wirksam werden.

Warnung: Ich würde es vermeiden, mehr als eine Änderung gleichzeitig über xkb vorzunehmen, es sei denn, Sie wissen wirklich, was Sie tun. Ein paar falsch zugeordnete Tasten zur gleichen Zeit könnten echte Kopfschmerzen verursachen!

Voller Dank an Radu Cotescu für die xkb-Remapping-Anweisungen - sie waren für Ubuntu 14.04, funktionieren jedoch auch für Ubuntu 16.04.

Danwild
quelle
Stellen Sie sicher, dass Sie einen Schnappschuss machen, bevor Sie dies tun! Ich hatte glücklicherweise einen anderen Zweck, und danach konnte Ubuntu nicht mehr richtig booten. Ich kehrte zurück und es fing wieder an zu arbeiten. Ich benutze 18.04 für das, was es wert ist.
Tom
2

Bei der Suche in anderen Fragen habe ich dieses Tool gefunden, um die Strg-Taste der MacBook-Tastatur zuzuordnen. CMD Links, um CMD + C oder CMD + V oder etwas anderes zu tun:

Installieren Sie die Gnome-Tweaks-Anwendung:

sudo apt-get install gnome-tweaks

Öffnen Sie die Anwendung Applications -> Gnome Tweaksund ordnen Sie die STRG-Taste WIN zu (wie CMD in Mac).

  1. Tastatur und Maus
  2. Zusätzliche Layoutoptionen (Links Super)
  3. Alt / Win-Taste Verhalten
  4. Strg ist Win und den üblichen Strg-Tasten zugeordnet

Genießen Sie das CMD + C or CMD + Vin Ihrer OSX VirtualBox mit Ubuntu-18 VM.

Hemã Vidal
quelle
Hat funktioniert. <filler>
skwny
Dadurch habe ich die Möglichkeit verloren, den Win / Apple-Schlüssel zu verwenden. Stattdessen habe ich folgende für Schritt 3 und 4: (3) Ctrl position, (4) Swap Left Win with Left Ctrl.
Turgs
0

Ich arbeite aus verschiedenen Gründen immer noch mit Ubuntu 12.04, daher kann ich für spätere Iterationen nicht sprechen. Versuchen Sie Folgendes:

Okay, zuerst möchten Sie vielleicht Ihren VB-Host-Schlüssel auf einen bestimmten Wert einstellen, z. B. den richtigen Befehl oder die richtige Alt-Taste ... etwas, das Sie normalerweise nicht verwenden. Ich denke, die Standardeinstellung ist die linke Befehlstaste, die die Operationen der meisten Leute stören wird.

Dies kann in den Einstellungen für VirtualBox selbst vorgenommen werden (und nicht auf dem Gastcomputer oder als maschinenspezifische Einstellung). Wählen Sie bei geöffneter VB-App (nicht im VM-Fenster) VirtualBox-> Preferences-> Input und wählen Sie dann den Host-Schlüssel am Anfang des Felds / der Zuordnungsliste "Virtual Machine".

Okay, danach in der Ubuntu-Gastmaschine selbst:

  1. Öffnen Sie Ihre Systemeinstellungen und wählen Sie Tastaturlayout.
  2. Öffnen Sie die Registerkarte Layouts.
  3. Sie werden wahrscheinlich nur einen Eintrag haben - Englisch (USA) oder so. Markieren Sie dies und klicken Sie auf die Schaltfläche "Optionen" unten rechts.
  4. Öffnen Sie den Expander "Alt / Win Key Behavior".
  5. Wählen Sie "Steuerung ist Win-Tasten (und den üblichen Strg-Tasten) zugeordnet".

Sie sollten feststellen, dass Ihre Mac-Befehlstaste jetzt wie gewünscht für Befehl-C, Befehl-V usw. funktioniert.

Kaitain
quelle
0

Im Fall von Kubuntu 18.04 mit Plasma 5 funktionierte es für mich (in den Systemeinstellungen / Eingabegeräten / Tastaturen), die Hardware als "104-Tasten-Allgemein" und das Layout als "Englisch (Macintosh)" festzulegen.

lurscher
quelle
-1

Dies hängt von der Software ab, die Sie zum Ausführen Ihrer virtuellen Maschine verwenden. Zum Beispiel verwende ich VMWare Fusion, um Ubuntu auf meinem Mac auszuführen, und um zu erreichen, was Sie wollen, gehe ich zu "Einstellungen" von VMWare Fusion und richte die gewünschte Tastenzuordnung in dieser spezifischen virtuellen Maschine ein (ich kann mehrere Setups haben, eines) für jede VM).

Ich habe VirtualBox nie benutzt, aber ich bin mir ziemlich sicher, dass Sie dies in den Einstellungen von VirtualBox tun können.

David Lopes
quelle