Nachahmung von Befehls- / Alt- / Steuertasten im Mac-Stil unter Linux

12

Ich finde es absolut toll, dass der Mac die Befehlstaste von der Steuertaste trennt, sodass Betriebssystem- und Textverknüpfungen nebeneinander existieren können. Es ist unglaublich nützlich, vor allem, weil es überall Emacs-Verknüpfungen zulässt .

Ich habe fast überall nach einem Dienstprogramm gesucht, das dies zulässt und nichts findet. Irgendeine Hilfe?

Hinweis: Ich möchte mehr als nur meine Tastatur neu zuordnen. Ich möchte tatsächlich Betriebssystemverknüpfungen und Textverknüpfungen aufteilen. Die einzige Möglichkeit, dies zu sehen, besteht darin, jede Verknüpfung in Gnome und Compiz manuell durchzugehen und zu ändern.

Kenrick Rilee
quelle

Antworten:

1

Ich habe es nicht selbst versucht, aber ich habe es über "Ask Ubuntu" gefunden:

Installieren Sie AutoKey:

apt-get install autokey-gtk

und setzen Sie einen Satz auf:

Phrase Text: <ctrl>+C (actually type out the <ctrl>+ here)
Paste Using: Keyboard
Abbreviation: None
Hotkey: <super>+v
Window Filter: None

Siehe hier: Wie funktioniert die Tastatur wie OSX System Wide?

Theorian
quelle
0

Update 02/03/2020

Kinto wurde jetzt in C für Ubuntu / Debian-Systeme mit x11 neu geschrieben. Es werden auch JSON-Konfigurationsdateien verwendet, wodurch die Verwaltung und Erweiterung auf andere Anwendungen als nur Terminals vereinfacht wird. Die App ist in den Terminal-Apps nicht mehr Super zugeordnet, sondern wird nun ordnungsgemäß Strg + Umschalt zugeordnet, um genau das gleiche Gefühl wie bei einer Befehlstaste zu erzielen.

Bitte überprüfen Sie die neueste Version. https://github.com/rbreaves/kinto

Die Hauptänderung, um die Änderung Super = Strg + Umschalt zu ermöglichen, befindet sich in dieser Symboldatei.

default partial xkb_symbols "mac_levelssym" {
    key <LWIN> {
      repeat= no,
      type= "ONE_LEVEL",
      symbols[Group1]= [ Hyper_L ],
      actions[group1]=[ SetMods(modifiers=Shift+Control) ]
    };
    key <RWIN> {
      repeat= no,
      type= "ONE_LEVEL",
      symbols[Group1]= [ Hyper_R ],
      actions[group1]=[ SetMods(modifiers=Shift+Control) ]
    };
};

Sie können Kinto nützlich finden. Es ist ein Projekt, das ich kürzlich erstellt habe, nachdem ich dieses Problem einige Jahre lang auf verschiedene Arten angegangen bin, und ich habe gerade das Gefühl, dass es solide genug ist, um es zu teilen.

Das Kinto-Installationsprogramm verwendet einfach Python für die Erstinstallation. Danach handelt es sich nur noch um einen Systemdienst, bash, xprop, setxkbmap und xkbcomp. Für mich ist es die schnellste und native 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-58f731817c0

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

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

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!
#
R Ben R.
quelle
Bitte posten Sie nicht dieselbe Antwort auf mehrere Fragen. Wenn die gleichen Informationen wirklich beide Fragen beantworten, sollte eine Frage (normalerweise die neuere) als Duplikat der anderen geschlossen werden. Sie können dies anzeigen, indem Sie abstimmen, um es als Duplikat zu schließen, oder, wenn Sie nicht genug Ruf dafür haben , eine Flagge hissen, um anzuzeigen, dass es sich um ein Duplikat handelt. Passen Sie andernfalls Ihre Antwort auf diese Frage an und fügen Sie dieselbe Antwort nicht einfach an mehreren Stellen ein.
DavidPostill
1
Wenn ich gedacht hätte, ich hätte der gestellten Frage durch Anpassen der Antwort etwas Wesentliches hinzufügen können, hätte ich dies getan. Insgesamt ist dies eine ziemlich häufige Frage, und alle teilen die gleiche Antwort. In beiden Fällen war mir die Richtlinie zum Markieren oder Schließen doppelter Fragen nicht bekannt. Ich werde das für die Zukunft berücksichtigen.
R Ben R