Mac OS X "Wahltaste-Pfeil" funktioniert wie Windows "Strg-Pfeil"

19

Ich verlasse mich unter Windows auf den Befehl " Ctrl- ", um durch Textdokumente zu navigieren.

Diese nützliche Tastenkombination bringt mich schnell zum Anfang des nächsten Wortes. Die folgende Sequenz veranschaulicht beispielsweise, was mit der Cursorposition nach aufeinanderfolgenden Drücken von Ctrl- geschehen würde (das "^" steht für den Cursor):

^The quick brown fox jumped over the lazy dog
The ^quick brown fox jumped over the lazy dog
The quick ^brown fox jumped over the lazy dog
The quick brown ^fox jumped over the lazy dog
The quick brown fox ^jumped over the lazy dog
...

Und wenn ich stattdessen auf drücke, bewegt sich der Cursor genau an die gleichen Stellen im Dokument, nur in die andere Richtung (was ideal ist, weil die Position des Cursors vorhersehbar ist, was dazu führt, dass ich meine Arbeit schneller erledige Änderungen):

The quick brown fox ^jumped over the lazy dog
The quick brown ^fox jumped over the lazy dog
The quick ^brown fox jumped over the lazy dog
The ^quick brown fox jumped over the lazy dog
^The quick brown fox jumped over the lazy dog
...

Mac OS X verfügt über eine ähnliche Tastenkombination ( Option- - Ich Ctrlhabe " Option" speziell " " zugeordnet, damit ich die gleiche Funktionalität wie gewohnt nutzen kann).

" Option- Arrow" bringt mich jedoch an das Ende des aktuellen Wortes, wenn Sie die rechte Pfeiltaste verwenden, wie hier dargestellt:

^The quick brown fox jumped over the lazy dog
The^ quick brown fox jumped over the lazy dog
The quick^ brown fox jumped over the lazy dog
The quick brown^ fox jumped over the lazy dog
The quick brown fox^ jumped over the lazy dog
...

Und was noch schlimmer ist: Wenn Sie in die andere Richtung gehen, kehren Sie nicht an dieselbe Stelle zurück wie vorwärts, sondern Sie gelangen zum Anfang des letzten Wortes:

The quick brown fox^ jumped over the lazy dog
The quick brown ^fox jumped over the lazy dog
The quick ^brown fox jumped over the lazy dog
The ^quick brown fox jumped over the lazy dog
^The quick brown fox jumped over the lazy dog
...

Das ist sehr frustrierend für mich, da ich oft zwischen Windows und Mac wechseln muss und sehr selten zum Ende des aktuellen Wortes gehen möchte (warum sollte ich das wollen, wenn ich nicht auch " Shift" gedrückt halte ? ). Ich möchte immer zum Anfang des nächsten Wortes springen.

Ich bin bereit, einige Anstrengungen zu unternehmen, damit die Mac-Version auf die gleiche Weise funktioniert (Software kaufen, einen benutzerdefinierten Applescript-Befehl schreiben, der mit diesen Tastaturkürzeln verknüpft ist), also suche ich nach Vorschlägen.

Gibt es Tools, mit denen sich dies für mich ändern lässt?

Wie würden Sie vorschlagen, das Problem zu beheben?

Vielen Dank

BEARBEITEN

Ich konnte in Automator einen "Service" erstellen und habe folgendes AppleScript verwendet:

on run {input, parameters}

    tell application "System Events" to key code 124 using {option down}
    tell application "System Events" to key code 124

end run

Dann habe ich diesen Dienst über die "Tastatur" -Einstellungen in den Systemeinstellungen mit dem " Command- " Tastenanschlag verknüpft .

Damit dies funktioniert, muss ich jedoch den Finger vom CommandSchlüssel nehmen. Das macht es irgendwie sinnlos. Es ist auch langsam und scheint in der Anwendung, in der ich es am meisten brauche, nicht zu funktionieren (Xcode).

Steve
quelle

Antworten:

21

Hier erfahren Sie, wie Sie die ⌃ Control+ Pfeiltasten so einstellen können, wie Sie es beschreiben. Kopieren Sie die folgende Eigenschaftsliste in ~/Library/KeyBindings/DefaultKeyBinding.dict(Sie können das Verzeichnis erstellen, wenn es noch nicht vorhanden ist):

{
    "^\UF703" = ("moveWordForward:", "moveWordForward:", "moveWordBackward:");
    "^$\UF703" = ("moveWordForwardAndModifySelection:", "moveWordForwardAndModifySelection:", "moveWordBackwardAndModifySelection:");
}

Dadurch wird der ⌃ ControlPfeil + gesetzt, um zum Anfang des nächsten Wortes zu navigieren (durch dreimaliges Verwenden der normalen Navigation von OS X: zum Ende des aktuellen Wortes, zum Ende des nächsten Wortes und zurück zum Anfang des nächsten Wortes). Ich habe auch eine Version hinzugefügt, mit der ⇧ ShiftSie unterwegs Text auswählen können.

Vorsichtsmaßnahme: Dies funktioniert nur in Cocoa-Apps, aber ich denke, die normale ⌥ Option+ Pfeilnavigation funktioniert auch. Stellen Sie außerdem sicher, dass Sie Ihre Apps neu starten!

jtbandes
quelle
Whoot! Genau das, worauf ich gehofft habe ... Danke! Lassen Sie es mich versuchen, dann werde ich die Antwort markieren.
Steve
Vielen Dank! Lief wie am Schnürchen. Zu Ihrer Information "Key Bindings" vs "KeyBindings" ... Ich habe "KeyBindings" verwendet und es hat funktioniert. Ich bin mir nicht sicher, ob es einen Unterschied macht. Schade, dass Xcode diese mit seinen eigenen, weniger leistungsfähigen Schlüsselbindungen überschreibt.
Steve
Whoops, ja, ich meinte KeyBindings! Xcodes sind nett, weil man in camelCase-Unterwörtern navigieren kann.
jtbandes
Ich mag das camelCase nav. Idealerweise möchte ich das Verhalten von Visual Studio in Xcode ... na ja.
Steve
Sie können zumindest Xcodes anpassen. In den Voreinstellungen gibt es eine Registerkarte zum Ändern der Tastenkombinationen.
jtbandes
5

Dinge, die Sie versuchen könnten. Ich habe diese nicht getestet, um festzustellen, ob sie die von Ihnen benötigte Funktion erfüllen.

Es gibt ein kostenloses Open-Source-Dienstprogramm namens DoubleCommand, mit dem Sie Tastaturbefehle für Mac OS X neu zuordnen können . Es ist eine Kernel-Erweiterung, daher funktioniert es auf einer sehr niedrigen Ebene.

Ein weiteres kostenloses Programm, das von DoubleCommand empfohlen wird, ist KeyRemap4MacBook . Sie müssen den einen oder anderen verwenden; Wenn beide auf Ihrem Mac installiert sind, treten Konflikte auf.


quelle
1
Verwenden von KeyRemap4MacBook unter OS X 10.11.x, damit Control + [Pfeil] wie in Windows funktioniert. Scrollen Sie nach unten, bis Sie " Für PC-Benutzer" finden, und aktivieren Sie (für mich Option 6) "PC-Stilsteuerung verwenden + Auf / Ab / Links / Rechts" ". Es gibt noch andere sehr nützliche Optionen. Diese Antwort definitiv hoch zu stimmen und obendrein kostete es keine zusätzlichen hundert Dollar!
John
1

Nach Jahren der lästigen OSX-Standardzuordnungen habe ich die Befehls- und Steuertasten gewechselt und wollte, dass die Tasten Strg + Pfeil anstelle von BOL / EOL die Funktionen "Wort vorwärts bewegen" und "Wort zurück bewegen" bieten. Die akzeptierte Antwort hat bei mir funktioniert, außer dass ^ in @ geändert wurde, da ich jetzt Control anstelle von Command verwende. Ich habe auch die weniger verwendeten BOL / EOL-Funktionen den Tastenkombinationen Wahltaste + Pfeil zugeordnet.

{
    "@\UF702" = ("moveWordBackward:");
    "@$\UF702" = ("moveWordBackwardAndModifySelection:");
    "~\UF702" = ("moveToBeginningOfLine:");
    "~$\UF702" = ("moveToBeginningOfLineAndModifySelection:");
    "@\UF703" = ("moveWordForward:", "moveWordForward:", "moveWordBackward:");
    "@$\UF703" = ("moveWordForwardAndModifySelection:", "moveWordForwardAndModifySelection:", "moveWordBackwardAndModifySelection:");    
    "~\UF703" = ("moveToEndOfLine:");
    "~$\UF703" = ("moveToEndOfLineAndModifySelection:");
}
m1k3t
quelle