Zmapuj tylko Ctrl + C, Ctrl + V i Ctrl-X [duplikat]

11

Wiem, że mogę globalnie zamienić Controli CommandMac OS, a to nie jest to, czego mi potrzeba. Chciałbym zachować oba przyciski takimi, jakie są i tylko i wykonywać Ctrl+C, Ctrl+V, and Ctrl-Xpracę tak, jakby były naciskane Commandprzyciskiem. Jak najłatwiej to zrobić?

Dmitrij Chornyi
źródło

Odpowiedzi:

9

Jedną z opcji byłoby użycie DefaultKeyBinding.dict , ale nie działałoby to we wszystkich aplikacjach lub widokach tekstowych.

{
    "^x" = cut:;
    "^c" = copy:;
    "^v" = paste:;
}

KeyRemap4MacBook działałby prawie wszędzie, a także pozwalał wykluczać określone aplikacje.

Oto definicja ponownego mapowania wybrana na zrzucie ekranu :

<item>
  <name>Use PC Style Copy/Paste</name>
  <appendix>(Control+C to Command_L+C)</appendix>
  <appendix>(Control+V to Command_L+V)</appendix>
  <appendix>(Control+X to Command_L+X)</appendix>
  <appendix>(Except in Terminal, VM, RDC, Emacs, X11, Eclipse)</appendix>
  <identifier>remap.copy_paste_winstyle_no_term</identifier>
  <not>EMACS, TERMINAL, VIRTUALMACHINE, REMOTEDESKTOPCONNECTION, X11, ECLIPSE</not>
  <autogen>--KeyToKey-- KeyCode::C, VK_CONTROL, KeyCode::C, ModifierFlag::COMMAND_L</autogen>
  <autogen>--KeyToKey-- KeyCode::V, VK_CONTROL, KeyCode::V, ModifierFlag::COMMAND_L</autogen>
  <autogen>--KeyToKey-- KeyCode::X, VK_CONTROL, KeyCode::X, ModifierFlag::COMMAND_L</autogen>
</item>
Lri
źródło
1

Inną opcją byłoby użycie BetterTouchTool .
Jest dość prosty w użyciu i można go skonfigurować tak, aby uruchamiał dowolne działanie ze skrótu klawiaturowego: Zrzut ekranu BetterTouchTool

Jednak w ten sposób CTRL + C lub CTRL + X nie działa już zgodnie z oczekiwaniami w terminalu. Ale możesz całkowicie wyłączyć BTT dla terminala, aby obsłużyć ten przypadek.

RoelF
źródło
0

Możesz zainstalować i skonfigurować aplikację Karabiner z następującą konfiguracją private.xmlpliku (edytuj w zakładce Różne ):

<?xml version="1.0"?>
<root>
  <item>
    <name>Copy with Ctrl-C</name>
    <identifier>private.use_ctrl_c_for_copy</identifier>
    <autogen>
        __KeyToKey__
        KeyCode::C, ModifierFlag::CONTROL_L,
        KeyCode::C, ModifierFlag::COMMAND_L
    </autogen>
  </item>
  <item>
    <name>Cut with Ctrl-X</name>
    <identifier>private.use_ctrl_x_for_cut</identifier>
    <autogen>
        __KeyToKey__
        KeyCode::X, ModifierFlag::CONTROL_L,
        KeyCode::X, ModifierFlag::COMMAND_L
    </autogen>
  </item>
  <item>
    <name>Paste with Ctrl-V</name>
    <identifier>private.use_ctrl_v_for_paste</identifier>
    <autogen>
        __KeyToKey__
        KeyCode::V, ModifierFlag::CONTROL_L,
        KeyCode::V, ModifierFlag::COMMAND_L
    </autogen>
  </item>
</root>

i włącz nowo utworzony element po ponownym załadowaniu pliku na karcie Zmień klucz .

kenorb
źródło