Czy można przesuwać kursor słowo po słowie za pomocą Cmd + lewo / prawo zamiast Alt + lewo / prawo?

13

Chciałbym użyć Cmd+ / zamiast Alt+ /, aby przesunąć kursor słowo po słowie w Mac OSX (Chyba coś kakaowego).

Czy można to zmienić?

Z tego samego powodu chciałbym przesunąć kursor na początek i koniec linii za pomocą Alt+ / zamiast Cmd+ / .

Czy da się to zrobić?

trusktr
źródło

Odpowiedzi:

9

Jedną z opcji byłoby utworzenie ~ / Library / KeyBindings / i zapisanie tego jako DefaultKeyBinding.dict:

{
    "@\UF702" = moveWordBackward:;
    "@\UF703" = moveWordForward:;
    "~\UF702" = moveToBeginningOfLine:;
    "~\UF703" = moveToEndOfLine:;
    "~$\UF702" = moveToBeginningOfLineAndModifySelection:;
    "~$\UF703" = moveToEndOfLineAndModifySelection:;
}

Nie można jednak zmienić ⇧⌘ ← lub ⇧⌘ →. I to nie działa w niektórych widokach tekstu, Xcode lub Firefox.

Korzystając z KeyRemap4MacBook, możesz dodać to do private.xml :

<autogen>--KeyToKey-- KeyCode::CURSOR_LEFT, VK_OPTION | ModifierFlag::NONE, KeyCode::CURSOR_LEFT, VK_COMMAND</autogen>
<autogen>--KeyToKey-- KeyCode::CURSOR_RIGHT, VK_OPTION | ModifierFlag::NONE, KeyCode::CURSOR_RIGHT, VK_COMMAND</autogen>
<autogen>--KeyToKey-- KeyCode::CURSOR_LEFT, VK_SHIFT | VK_OPTION | ModifierFlag::NONE, KeyCode::CURSOR_LEFT, VK_SHIFT | VK_COMMAND</autogen>
<autogen>--KeyToKey-- KeyCode::CURSOR_RIGHT, VK_SHIFT | VK_OPTION | ModifierFlag::NONE, KeyCode::CURSOR_RIGHT, VK_SHIFT | VK_COMMAND</autogen>
<autogen>--KeyToKey-- KeyCode::CURSOR_LEFT, VK_COMMAND | ModifierFlag::NONE, KeyCode::CURSOR_LEFT, VK_OPTION</autogen>
<autogen>--KeyToKey-- KeyCode::CURSOR_RIGHT, VK_COMMAND | ModifierFlag::NONE, KeyCode::CURSOR_RIGHT, VK_OPTION</autogen>
<autogen>--KeyToKey-- KeyCode::CURSOR_LEFT, VK_COMMAND | VK_SHIFT | ModifierFlag::NONE, KeyCode::CURSOR_LEFT, VK_OPTION | VK_SHIFT</autogen>
<autogen>--KeyToKey-- KeyCode::CURSOR_RIGHT, VK_COMMAND | VK_SHIFT | ModifierFlag::NONE, KeyCode::CURSOR_RIGHT, VK_OPTION | VK_SHIFT</autogen>

Powodowałoby to, że cofanie się z tab ← i zmiana zakładek z ⇧⌘ ← przestałyby działać.

Zobacz źródło dla stałych kodu klucza i predefiniowanych ustawień .

Lri
źródło
Pierwsza opcja jest najlepsza, ponieważ nie zastępuje innych skrótów klawiszowych. Również ta strona jest doskonałym źródłem informacji na temat dostosowywania DefaultKeyBinding.dict
aaaaaa
3

Tak. Korzystając z Keyboard Maestro , właśnie utworzyłem dwa nowe makra.

Pierwszy ma „wyzwalacz skrótu” <polecenie> <strzałka w lewo> i „wpisuje naciśnięcie klawisza” z <opcja> <strzałka w lewo>

Drugi to odwrotność, „wyzwalanie klawisza skrótu” <opcja> <strzałka w lewo> i wykonuje „naciśnięcie klawisza” <polecenie> <strzałka w lewo>. I to działa.

Następnie możesz dodać 2 dodatkowe makra we właściwym kierunku.

Sposób, w jaki napisałem je jako szybki test, obejmuje cały system, ale można je ograniczyć do określonych zestawów aplikacji.

Chociaż Keyboard Maestro nie jest darmowy, ma ograniczoną czasowo wersję demonstracyjną.

Thorgrim
źródło
Dzieki za sugestie. Wolałbym darmową metodę. Założę się, że jest jakiś sposób, aby jakoś
zagłębić się
+1 To najlepsza opcja dla mnie w systemie macOS Sierra. Użyłem go do zmiany mapowania słów i słów „podskakujących” w celu dopasowania kombinacji Windows.
Sébastien
Działa to dla mnie idealnie. Klawiatura Maestro jest wyjątkowo wydajna i może być używana do wielu automatyzacji.
Nick Alexander
1

Użyłem KeyBindingsEditor (darmowy) do edycji DefaultKeyBindings.dicti działa świetnie (nawet w Firefox i XCode).

ustawienia kursora za pomocą KeyBindingsEditor

Pozostawienie przycisku kciuka na klawiszu while podczas przesuwania kursora tekstowego działa o wiele lepiej - powinien być domyślny!

zero
źródło
Nie próbowałem tego w Yosemite. Czy wiesz, czy nadal działa?
trusktr
To robi!! :) :) :)
trusktr
Wygląda na to, że nie działa w Sierra - okno aplikacji nie wyświetla się :(
Petr Újezdský
1

Polecam karabinka do ciebie. To potężna wtyczka systemowa do mapowania klawiszy i kombinacji klawiszy. Możesz mapować dowolne kluczowe kombinacje na cokolwiek w swoim umyśle. Sprawdź to, a się w nim zakochasz

Huangzonghao
źródło
Jak dokładnie trzeba skonfigurować Karabiner, aby wykonać zadanie opisane w pytaniu?
nohillside
Lubię Karabiner. Chyba musiałbym spojrzeć na kod źródłowy, aby dowiedzieć się, jak to działa.
trusktr 20.04.16
wystarczy ustawić cmd + left jako wyzwalacz dla karabinka, aby wysłać zdarzenie alt + left. Możesz nawet ograniczyć ponowne mapowanie kluczy w niektórych aplikacjach lub oknach
huangzonghao