Я ищу способ сопоставить некоторые горячие клавиши, чтобы "удалить строку, в которой мой курсор включен" в Xcode. Я нашел "удалить до конца строки" и "удалить в начало строки" в привязке текстовых клавиш, но мне не хватает того, как полностью удалить строку независимо от того, что я выбрал. TextMate имеет эту функциональность, сопоставленную с Ctrl + Shift + D, и мне хотелось бы, если возможно, одно и то же. Любые идеи?
Xcode: удалить горячую клавишу
Ответ 1
Вы можете настроить общесистемный файл привязки ключей, который будет применяться ко всем Cocoa приложениям.
Чтобы сделать то, что вы хотите, вам должно понравиться следующее:
В вашей домашней папке Library/KeyBindings/DefaultKeyBinding.dict
{
"^D" = (
"moveToBeginningOfLine:",
"deleteToEndOfLine:",
);
}
Я считаю, что если вы хотите, чтобы это было применимо к Xcode, вы можете назвать файл PBKeyBinding.dict
вместо этого, но я не пробовал это сам. Вы можете узнать больше об этой системе здесь и здесь.
Ответ 2
Спасибо за помощь, Эшли. После некоторых экспериментов я отобразил мои любимые команды TextMate (дублировать строку, удалить строку). Я создал файл ~/Library/KeyBindings/PBKeyBinding.dict и добавил следующее:
{
"^$K" = (
"selectLine:",
"cut:"
);
"^$D" = (
"selectLine:",
"copy:",
"moveToEndOfLine:",
"insertNewline:",
"paste:"
);
}
Добавленный "deleteBackward:" выполняет резервное копирование одной строки после удаления содержимого строки. Возможно, вы просто можете использовать "selectLine:".
Ответ 3
Поскольку я не всегда работаю с одним и тем же кодом, я предпочитаю не устанавливать скрипты.
Xcode использует некоторые подмножества команд emacs. Я использую этот подход для быстрого удаления строки. ^ k (control-k) удаляет курсор в конец строки. Выполнение этого дважды также удаляет возврат каретки и занимает следующую строку. ^ a приведет вас к началу строки.
Итак, чтобы удалить полную строку с самого начала, вы можете использовать ^ a ^ k ^ k.
Ответ 4
Я искал решение для этого, и я попробовал Ashley Clark, но оказалось, что есть более простой вариант с помощью включенного User Script, называемого delete Line.
- Откройте странное меню слева от "справки", которое выглядит как свиток.
- Выберите "Редактировать пользовательские скрипты..."
- Перейдите на вкладку "Вкладки клавиш"
- Развернуть раздел "Текст"
- Дважды щелкните столбец ⌘ рядом с "Удалить строку" и введите свою горячую клавишу. Он может предупредить вас, что вы украли его из какой-либо другой команды, но это прекрасно.
Готово! Вы можете сделать то же самое для Move Line Up и Move Line Down, если вы похожий на Eclipse, как я.
Ответ 5
<key>Custom Keyword Set</key>
<dict>
<key>Delete Current Line In One Hit</key>
<string>moveToEndOfLine:, deleteToBeginningOfLine:, deleteToEndOfParagraph:</string>
</dict>
Я предлагаю создать ваш настраиваемый диктар в вашем файле IDETextKeyBindingSet.plist.
Итак:
- закрыть Xcode;
- открыть терминал;
- sudo nano/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist
- добавить новый пользовательский раздел, например, код сверху;
- сохранить, выйти и открыть Xcode;
- [Xcode > Настройки > привязка клавиш]
- найдите "Удалить.." и создайте новый ярлык.
Ответ 6
Это работает для меня (Xcode 4.4.1):
Те же шаги, что описаны здесь: Дублированная строка Xcode (Галлейный ответ)
Но вместо:
selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:
Использование:
selectLine:, moveToBeginningOfLine:, deleteToEndOfLine:
Ответ 7
Если у вас возникли проблемы с современным решением Xcode (которое я было) для этого в Xcode 7.2, это сделать то, что Opena упомянуто здесь со скриншотами или в текстовой форме через ответ Velthune. Поскольку мне нужна более простая команда, я упростил команду:
selectLine:, delete:, moveToBeginningOfLine:
Конечно, в настройках Xcode Preferences → Key Bindings вы можете просто найти команду дважды щелкнуть по столбцу Key и дать ей собственную привязку Ctrl + Shift + D.
Ответ 8
Для Xcode 9.0 (beta), вставляя подгонянный ключевой словарь в IDETextKeyBindingSet.plist, работающий отлично для меня. Вам нужно перезапустить XCode, если он уже открыт, и после следующего запуска вы найдете новые настраиваемые ярлыки в меню KeyBindings.
<key>Customized</key>
<dict>
<key>Delete Rest Of Line</key>
<string>deleteToEndOfLine:</string>
<key>Delete Line</key>
<string>moveToBeginningOfLine:, deleteToEndOfLine:</string>
<key>Duplicate Current Line</key>
<string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, moveToBeginningOfLine:, paste:</string>
</dict>