it-swarm.com.de

Wie wechsle ich die Befehlstaste und die Steuertaste auf einem MacBook Pro?

Ich habe das Web durchsucht und es scheint, als würde Xmodmap/irgendetwas nicht richtig funktionieren. Ich möchte BEIDE Befehlstasten mit meiner Steuertaste tauschen - im Wesentlichen umkehren, was sie gerade tun.

Wie würde ich das machen?

Ich habe xmodmap -e "keycode 133 = Control_L" und die entsprechenden Befehle für die Tastencodes 134 (rechter Befehl) und 37 (Steuerung links) ausprobiert. Ich habe sogar diese Befehle ausprobiert, plus xmodmap -pke > ~/.Xmodmap und xmodmap ~/.Xmodmap in .xinitrc.

Mein Endziel ist Ich möchte, dass HUD/Dash angezeigt wird, wenn ich zur Funktionskontrolle auf control und command klicke, dh control-v ist eine übliche Verknüpfung zum Einfügen würde ich auf command-v klicken

59
kalaracey

Ich habe es herausgefunden. Fügen Sie in ~/.Xmodmap Folgendes ein:

clear control
clear mod4

keycode 105 =
keycode 206 =

keycode 133 = Control_L NoSymbol Control_L
keycode 134 = Control_R NoSymbol Control_R
keycode 37 = Super_L NoSymbol Super_L

add control = Control_L
add control = Control_R
add mod4 = Super_L

Führen Sie zum Testen den folgenden Befehl aus:

xmodmap ~/.Xmodmap

Fügen Sie es zu Startup Applications hinzu, damit es jedes Mal ausgeführt wird.

Dies sollte auf jedem MacBook Pro funktionieren. Das Problem war, dass Xmodmap den linken und rechten Befehlstasten Super_L und der linken Steuertaste Control_L zuordnete. Aus irgendeinem Grund glaubt Ubuntu standardmäßig, dass das MacBook Pro über eine Standardtastatur mit 105 Tasten verfügt (wahrscheinlich über die vollständige Apple Tastatur), aber das ist falsch. Wie auch immer, ich habe die Keycodes den richtigen Keysims zugewiesen und die Keysims dann control und mod4 zugewiesen.

63
kalaracey

Ich habe gestern Ubuntu 16.04 Dual Boot auf meinem MBP13 "installiert. Für Ubuntu 16.04 habe ich es folgendermaßen gemacht:

Schritt 1: Terminal starten

Schritt 2: X-Tastaturerweiterung bearbeiten

Sudo nano /usr/share/X11/xkb/symbols/pc

Schritt 3: Nehmen Sie die folgenden Änderungen vor. Stellen Sie sicher, dass Ihre Datei folgendermaßen aussieht:

key <LCTL> {    [ Super_L       ]   };
key <LWIN> {    [ Control_L     ]   };

...

key <RCTL> {    [ Super_R       ]   };
key <RWIN> {    [ Control_R     ]   };

Schritt 4: Löschen Sie den Cache von xkb

Sudo rm -rf /var/lib/xkb/*

Schritt 5 (bedingt): Wenn die Schlüssel nach Schritt 4 nicht ausgetauscht wurden, starten Sie Ihren Computer neu. Danach hat es bei mir geklappt.

Hoffe es hilft, viel Glück!

30
clodal

Gehe in System -> Preferences -> Keyboard

Klicken Sie auf die Registerkarte "Layouts" und dann auf die Schaltfläche "Layout Options".

Klicke auf "Alt/Win key behaviour"

Wählen Sie "Steuerung ist Win-Tasten zugeordnet (und die übliche Strg-Taste).

from http://ubuntuforums.org/showthread.php?t=1293081

15
alex reska

Gehen Sie zu den Systemeinstellungen und dann zum Tastaturlayout, dann zu den Optionen, dann zum Verhalten der Win/Alt-Taste, und überprüfen Sie dann die "Meta-Schalter Strg" und dann in der Strg-Position "Strg-Schalter Meta" und dort haben Sie es!

am 12.04.1 änderst du das durch:

Gehen Sie zuerst zu "Systemeinstellungen", klicken Sie dann auf "Tastatur", dann auf "Layouteinstellungen" (unten links), dann auf "Optionen" unten rechts, erweitern Sie dann die Registerkarte "Verhalten der Alt/Win-Taste" und wählen Sie dann " Die Steuerung wird zugeordnet, um Schlüssel (und die üblichen Strg-Tasten) zu gewinnen.

6
TenorB

Die Community-Ubuntu-Hilfeseite für Apple Tastaturen enthält die folgenden Schritte, um diese Änderung dauerhaft vorzunehmen: (getestet am 27.05.2017)

Führen Sie den folgenden Befehl aus, um die Konfigurationszeile an die Datei /etc/modprobe.d/hid_Apple.conf anzuhängen und sie bei Bedarf zu erstellen:

echo options hid_Apple swap_opt_cmd=1 | Sudo tee -a /etc/modprobe.d/hid_Apple.conf

Lösen Sie das Kopieren der Konfiguration in die initramfs-Bootdatei aus.

Sudo update-initramfs -u -k all

Optional können Sie einen Neustart durchführen

Sudo reboot

Um es vorübergehend zu testen, können Sie ausführen

echo 1 | Sudo tee /sys/module/hid_Apple/parameters/swap_opt_cmd
5
RasmusWL

Aktualisiert für 18.04, da keine der angegebenen Antworten auf meinem System zu funktionieren schien. Ich habe eine Neuinstallation von 18.04 durchgeführt und versucht, eine kabelgebundene Apple Aluminiumtastatur zu verwenden. Das Standardverhalten von Left Super auf Englisch US ist Gnome Desktop Dashboard zugeordnet. Das Tweak Tool hatte alle notwendigen Einstellungen in einer einfach zu bedienenden GUI!

Sudo apt install gnome-Tweak-tool

Zuerst habe ich den Dashboard-Hotkey auf der rechten Seite getauscht und dann unter "Additional Layout Options" können Sie "Ctrl position/ Swap Left Win mit Left Ctrl " verwenden, um eine gute Wirkung zu erzielen.

4
Dan Rozelle

Duplikat von Wie tauscht man Schritt für Schritt die Befehls- und Steuertasten mit xkb aus?

Im 16.04 habe ich das endlich zum Laufen gebracht. Xmodmap funktioniert nicht überall in allen Apps, das Tweak-Tool von gnome verfügte nicht über die entsprechende Funktion, und die Bearbeitung eines benutzerdefinierten Altwin2-Schlüsselwechsels (wie die Hauptantwort hier) schlug fehl und elegante Lösung:

gksudo gedit /usr/share/X11/xkb/symbols/pc

ändere es in:

default  partial alphanumeric_keys modifier_keys
xkb_symbols "pc105" {

key <ESC>  {    [ Escape        ]   };

// The extra key on many European keyboards:
key <LSGT> {    [ less, greater, bar, brokenbar ] };

// The following keys are common to all layouts.
key <BKSL> {    [ backslash,    bar ]   };
key <SPCE> {    [    space      ]   };

include "srvr_ctrl(fkey2vt)"
include "pc(editing)"
include "keypad(x11)"

key <BKSP> {    [ BackSpace, BackSpace  ]   };

key  <TAB> {    [ Tab,  ISO_Left_Tab    ]   };
key <RTRN> {    [ Return        ]   };

key <CAPS> {    [ Caps_Lock     ]   };
key <NMLK> {    [ Num_Lock      ]   };

key <LFSH> {    [ Shift_L       ]   };
key <LCTL> {    [ Alt_L     ]   };
key <LWIN> {    [ Super_L       ]   };

key <RTSH> {    [ Shift_R       ]   };
key <RCTL> {    [ Alt_R     ]   };
key <RWIN> {    [ Super_R       ]   };
key <MENU> {    [ Menu          ]   };

// Beginning of modifier mappings.
modifier_map Shift  { Shift_L, Shift_R };
modifier_map Lock   { Caps_Lock };
modifier_map Control{ Control_L, Control_R };
modifier_map Mod2   { Num_Lock };
modifier_map Mod4   { Super_L, Super_R };

// Fake keys for virtual<->real modifiers mapping:
key <LVL3> {    [ ISO_Level3_Shift  ]   };
key <MDSW> {    [ Mode_switch       ]   };
modifier_map Mod5   { <LVL3>, <MDSW> };

key <ALT>  {    [ NoSymbol, Control_L, Control_R    ]   };
//include "altwin(meta_alt)"
key <LALT> {    [ Control_L     ]   };
key <RALT> {    [ Control_R     ]   };
modifier_map Mod1   { Alt_L, Alt_R, Meta_L, Meta_R };

key <META> {    [ NoSymbol, Meta_L, Meta_R  ]   };
modifier_map Mod1   { <META> };

key <SUPR> {    [ NoSymbol, Super_L ]   };
modifier_map Mod4   { <SUPR> };

key <HYPR> {    [ NoSymbol, Hyper_L ]   };
modifier_map Mod4   { <HYPR> };
// End of modifier mappings.

key <OUTP> { [ XF86Display ] };
key <KITG> { [ XF86KbdLightOnOff ] };
key <KIDN> { [ XF86KbdBrightnessDown ] };
key <KIUP> { [ XF86KbdBrightnessUp ] };
};

hidden partial alphanumeric_keys
xkb_symbols "editing" {
key <PRSC> {
type= "PC_ALT_LEVEL2",
symbols[Group1]= [ Print, Sys_Req ]
};
key <SCLK> {    [  Scroll_Lock      ]   };
key <PAUS> {
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Pause, Break ]
};
key  <INS> {    [  Insert       ]   };
key <HOME> {    [  Home         ]   };
key <PGUP> {    [  Prior        ]   };
key <DELE> {    [  Delete       ]   };
key  <END> {    [  End          ]   };
key <PGDN> {    [  Next         ]   };

key   <UP> {    [  Up           ]   };
key <LEFT> {    [  Left         ]   };
key <DOWN> {    [  Down         ]   };
key <RGHT> {    [  Right        ]   };
};

Sparen.

rm -rf /var/lib/xkb/*

(Ich weiß nicht, ob dies erforderlich ist, aber ich habe es getan.)

Starten Sie neu.

1
Tom Mercer

Möglicherweise ist Kinto nützlich. Es ist ein Projekt, das ich kürzlich ins Leben gerufen habe, nachdem ich dieses Problem einige Jahre lang auf verschiedene Weise angegangen bin.

Das Kinto-Installationsprogramm verwendet einfach python, um die Erstinstallation durchzuführen. Danach handelt es sich nur noch um einen systemd-Dienst, bash, xprop, setxkbmap und xkbcomp. Für mich ist es die schnellste und ursprünglichste Lösung für dieses Problem, die Sie finden werden.

https://github.com/rbreaves/kinto

https://medium.com/@benreaves/kinto-a-mac-inspired-keyboard-mapping-for-linux-58f731817c

Hier ist auch eine Zusammenfassung: Wenn Sie nur sehen möchten, was das Herzstück des Ganzen ist, wird Ihre Tastaturbelegung bei Bedarf nicht geändert. Das Gist enthält auch keine benutzerdefinierten xkb-Keymap-Dateien, mit denen Cursor im MacOS-Stil eingerichtet werden, und keine Word-Manipulationen, bei denen Cmd und die Pfeiltasten verwendet werden.

https://Gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb

Wesentlicher Inhalt

# permanent Apple keyboard keyswap
echo "options hid_Apple swap_opt_cmd=1" | Sudo tee -a /etc/modprobe.d/hid_Apple.conf
update-initramfs -u -k all

# Temporary & instant Apple keyboard keyswap
echo '1' | Sudo tee -a /sys/module/hid_Apple/parameters/swap_opt_cmd

# Windows and Mac keyboards - GUI (Physical Alt is Ctrl, Physical Super is Alt, Physical Ctrl is Super)
setxkbmap -option;setxkbmap -option altwin:ctrl_alt_win

# Windows and Mac keyboards - Terminal Apps (Physical Alt is Super, Physical Super is Alt, Physical Ctrl is Ctrl)
setxkbmap -option;setxkbmap -option altwin:swap_alt_win

#
# If you want a systemd service and bash script to help toggle between
# GUI and Terminal applications then look at project Kinto.
# https://github.com/rbreaves/kinto
#
# Note: The above may not work for Chromebooks running Linux, please look
# at project Kinto for that.
#
# If anyone would like to contribute to the project then please do!
#
0
R Ben R