Як я можу перепризначити комбінації клавіш швидкого доступу?


31

Я використовую Mac протягом багатьох років, але вважаю за краще займатися розробкою програмного забезпечення для Windows. Я дуже звик, що дуже часто використовую наступні ярлики на Windows:

<CTRL>  + INSERT: Copy
<SHIFT> + INSERT: Paste
<SHIFT> + DELETE: Cut

З пізнього часу я взявся робити навіть свою розробку на Mac. Однак, як за звичкою, я дуже сильно пропускаю ці ярлики. Насправді, мені здається, це набагато зручніше, ніж комбінований комманд + (C / V / X).

Чи є спосіб перепризначити ці три ярлики хоча б?

Я шукаю в Інтернеті і в системних налаштуваннях "Клавіатури", але нічого не знайшов.

PS: Якщо вам цікаво, де я знаходжу клавіші INSERT в програмі mac book pro, я використовую бездротову клавіатуру.



Відповіді:


14
System Preferences: Keyboard: Modifier Keys...

Потім поміняйте клавіші Command і Control. Це змінить все глобально для всіх команд клавіатури в усьому світі.

введіть тут опис зображення


3
Будь-який спосіб зробити команду + ліворуч або команда + праворуч перейти одне слово ліворуч або одне слово право замість будинку та закінчити?
trusktr

2
Мені дуже хотілося, щоб десь опитувалися користувачі Mac, які насправді перемикають.
Мікро

2
Це також псує наш дорогий ALT-TAB!
Кирило Дюшон-Доріс

5
Як це відповідь <SHIFT> + ВСТАВКА: Вставити?
AD

37

Це чудово працювало для мене, коли я використовую лише функції вирізання / вставки / копіювання, якими я користуюся так частовведіть тут опис зображення


2
У деяких додатках, таких як Finder, це не дуже добре. Проблема полягає в тому, що іноді пункт меню називається «Скопіювати 6 елементів» або «Копіювати файл.txt», а потім це не працює
Майк Бландфорд,

2
Як ви з'ясуєте назви ярликів? де я можу побачити всі доступні? тому що в моєму ОС є лише меню довідки показати і нічого більше ... немає автозаповнення в новому діалоговому вікні ярлика
Vach

для копіювання вставити його логічно, але, наприклад, CTRL + Назад, я не знаю імені і хочу змінити його на Command + Back
vach

10

Спробуйте створити ~/Library/KeyBindings/та зберегти такий список властивостей, як цей, як DefaultKeyBinding.dict :

{
    "^\UF727" = copy:; // control-insert
    "$\UF727" = paste:; // shift-insert
    "^\UF728" = cut:; // control-delete
}

У мене немає клавіатури з клавішею вставки, тому я не міг перевірити, чи працюють перші два налаштування. Остання настройка працює для мене.

Редагувати: ще одним варіантом є використання Karabiner (раніше KeyRemap4MacBook):

<autogen>__KeyToKey__ KeyCode::PC_INSERT, VK_CONTROL | Modifierflag::NONE KeyCode::C, ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ KeyCode::PC_INSERT, VK_SHIFT | Modifierflag::NONE, KeyCode::V, ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ KeyCode::FORWARD_DELETE, VK_SHIFT | Modifierflag::NONE, KeyCode::X, ModifierFlag::COMMAND_L</autogen>

1
Дав постріл. Це, здається, не працює. Гадаю, мені доведеться звикнути до ярликів буфера обміну Mac. Велике спасибі Я спробую і прочитати за посиланнями. По-перше, я не зрозумів більшість речей у цих посиланнях :)
Code Poet

3
Створили обліковий запис просто для того, щоб модифікувати це. Нарешті KeyRemap4MacBook дозволив мені використовувати ctrl / shift + ins / del на mac, це дійсно зробило моє кодування набагато швидшим. Я балакав з DoubleCommand, спеціальними клавішними клавішами тощо, але цей просто працював прямо з коробки.
Арне

1
@Arne На жаль, програма перестала працювати з оновленням Sierra. Підхід до файлів KeyBindings для мене ніколи не працював.
ficuscr

2

System Preferences -> Keyboard -> Keyboard Shortcuts

Ви можете змінити (або призначити) кілька гарячих клавіш, знайшовши у списку, а потім клацнувши на присвоєній клавіші, а потім набравши новий для заміни.

Для заміни (наприклад) операції "копіювання" в певній програмі додайте запис для програми, яку ви використовуєте (або для всіх програм). У полі заголовка меню введіть ТОЧНО текст меню пункту i (наприклад, Копіювати) як текст. Перезапустіть програму та натисніть на пункт меню в межах програми, ви побачите, що це було замінено на ваш власний ярлик


2

Я також використовую Ctrl-Ins, Shift-Ins тощо.

Рішення Описана тут , а також перепризначення Home і End ключі , щоб бути більш Windows , як, наприклад ,

  • Відкрийте TextEdit у папці Програми. Якщо TextEdit уже відкритий, створіть новий документ за допомогою File-> New. Повинно бути вікно з написом "Без назви".
  • Виберіть текст у вікні нижче, скопіюйте його та вставте у нове вікно TextEdit.
  • У TextEdit перетворіть цей текст у звичайний текст (за замовчуванням - це багатий текст), вибравши Формат-> Зробити звичайний текст.
  • Далі виберіть Файл-> Зберегти як ... У діалоговому вікні «Зберегти як» перейдіть до своєї домашньої директорії (подивіться під МІСЦЯМ ліворуч на зображення будинку, яке має ваше ім’я поруч). У домашньому каталозі двічі клацніть папку «Бібліотека». Якщо ви бачите папку KeyBindings, двічі клацніть на ній. Якщо ні, то натисніть кнопку "Нова папка" (у каталозі бібліотеки), назвіть нову папку KeyBindings (без місця) та двічі клацніть на ній. Введіть DefaultKeyBinding.dict для імені файлу (вгорі) та натисніть кнопку Зберегти.
  • Попередження: TextEdit іноді намагатиметься вам "допомогти", додавши до імені файлу розширення .txt. Переконайтесь, що цього не відбувається. Якщо вас попросять використовувати розширення .txt, скажіть TextEdit, щоб натомість використовувати .dict. Він не працюватиме, якщо використовувати .txt. Якщо у вас виникли проблеми, дивіться коментар Натана нижче.
  • Перш ніж ці зміни набудуть чинності, вам потрібно вийти з системи та знову увійти.

Код, який потрібно вставити у ~/Library/KeyBindings/DefaultKeyBinding.dictфайл, такий:

/* ~/Library/KeyBindings/DefaultKeyBinding.Dict
This file remaps the key bindings of a single user on Mac OS X 10.5 to more closely
match default behavior on Windows systems.  This particular mapping assumes
that you have also switched the Control and Command keys already.

This key mapping is more appropriate after switching Ctrl for Command in this menu:
Apple->System Preferences->Keyboard & Mouse->Keyboard->Modifier Keys...->
Change Control Key to Command
Change Command key to Control
This applies to OS X 10.5 and possibly other versions.

Here is a rough cheatsheet for syntax.
Key Modifiers
^ : Ctrl
$ : Shift
~ : Option (Alt)
@ : Command (Apple)
# : Numeric Keypad

Non-Printable Key Codes

Up Arrow:     \UF700        Backspace:    \U0008        F1:           \UF704
Down Arrow:   \UF701        Tab:          \U0009        F2:           \UF705
Left Arrow:   \UF702        Escape:       \U001B        F3:           \UF706
Right Arrow:  \UF703        Enter:        \U000A        ...
Insert:       \UF727        Page Up:      \UF72C
Delete:       \UF728        Page Down:    \UF72D
Home:         \UF729        Print Screen: \UF72E
End:          \UF72B        Scroll Lock:  \UF72F
Break:        \UF732        Pause:        \UF730
SysReq:       \UF731        Menu:         \UF735
Help:         \UF746

NOTE: typically the Windows 'Insert' key is mapped to what Macs call 'Help'.  
Regular Mac keyboards don't even have the Insert key, but provide 'Fn' instead, 
which is completely different.
*/

{
"\UF729"   = "moveToBeginningOfLine:";                       /* Home         */
"@\UF729"  = "moveToBeginningOfDocument:";                   /* Cmd  + Home  */
"$\UF729"  = "moveToBeginningOfLineAndModifySelection:";     /* Shift + Home */
"@$\UF729" = "moveToBeginningOfDocumentAndModifySelection:"; /* Shift + Cmd  + Home */
"\UF72B"   = "moveToEndOfLine:";                             /* End          */
"@\UF72B"  = "moveToEndOfDocument:";                         /* Cmd  + End   */
"$\UF72B"  = "moveToEndOfLineAndModifySelection:";           /* Shift + End  */
"@$\UF72B" = "moveToEndOfDocumentAndModifySelection:";       /* Shift + Cmd  + End */
"\UF72C"   = "pageUp:";                                      /* PageUp       */
"\UF72D"   = "pageDown:";                                    /* PageDown     */
"$\UF728"  = "cut:";                                         /* Shift + Del  */
"$\UF727"  = "paste:";                                       /* Shift + Ins */
"@\UF727"  = "copy:";                                        /* Cmd  + Ins  */
"$\UF746"  = "paste:";                                       /* Shift + Help */
"@\UF746"  = "copy:";                                        /* Cmd  + Help (Ins) */
"@\UF702"  = "moveWordBackward:";                            /* Cmd  + LeftArrow */
"@\UF703"  = "moveWordForward:";                             /* Cmd  + RightArrow */
"@$\UF702" = "moveWordBackwardAndModifySelection:";   /* Shift + Cmd  + Leftarrow */
"@$\UF703" = "moveWordForwardAndModifySelection:";   /* Shift + Cmd  + Rightarrow */
}

Зовнішні посилання можуть відійти. Будь ласка, зв’яжіть тут найвідповідніший вміст у своїй відповіді, щоб відповідь завжди була тут, а посилання може послужити для більш глибокого дослідження.
кмарш

Ха, я забув, що навіть написав цю відповідь. Я, мабуть, відремонтував свій Mac 5 разів, з тих пір, як я його написав, і звик до комбінацій Mac років тому.
Метт Фріар

0

Ви можете встановити та налаштувати додаток Karabiner із такою конфігурацією private.xmlфайлу (редагувати на вкладці Різне ):

<?xml version="1.0"?>
<root>
  <item>
    <name>Copy with Ctrl-Insert</name>
    <identifier>private.use_ctrl_insert_for_copy</identifier>
    <autogen>
        __KeyToKey__
        KeyCode::PC_INSERT, ModifierFlag::CONTROL_L,
        KeyCode::C, ModifierFlag::COMMAND_L
    </autogen>
  </item>
  <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 Shift-Delete</name>
    <identifier>private.use_shift_delete_for_cut</identifier>
    <autogen>
        __KeyToKey__
        KeyCode::DELETE, ModifierFlag::SHIFT_L,
        KeyCode::X, 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 Shift-Insert</name>
    <identifier>private.use_shift_insert_for_paste</identifier>
    <autogen>
        __KeyToKey__
        KeyCode::PC_INSERT, ModifierFlag::SHIFT_L,
        KeyCode::V, 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>

і ввімкніть новостворений елемент після перезавантаження файлу на вкладці Змінити ключ .

Пов'язане: Remap Ctrl + C, Ctrl + V і Ctrl-X


-1

Я не можу змусити Карабінерські елементи працювати на мене для Сьєрри, немає ключа Вставка. Я нарешті вирішив, що проблема полягає в тому, що я використовую ліву руку для натискання клавіш модифікаторів (ctrl, cmd, opt), а правою рукою натискаю навігаційні клавіші (стрілки, головка, кінець, вставка, видалення). ЧОМУ Чому Cmd-C і Cmd-V такі незручні.

Тому я експериментую (через ярлики системної клавіатури вище):

  • Cmd- [для копій
  • Cmd- [для вставки

1
Мені важко бачити, як це фактична відповідь, а не коментар / відгуки щодо ваших випробувань / експериментів ..
Аллан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.