EDITAR: 12 de julio de 2020
Después de actualizar a Xcode 11.5 nuevamente, mi duplicate line
entrada clave del plist
archivo desapareció. Tuve que agregarlo nuevamente. Sin embargo, la combinación de teclas todavía estaba allí.
EDITAR: 17 de septiembre de 2019
Después de actualizar a Xcode 10.3 nuevamente, mi duplicate line
entrada clave del plist
archivo desapareció. Tuve que agregarlo nuevamente. Sin embargo, la combinación de teclas todavía estaba allí.
EDITAR: 28 de mayo de 2019
Después de actualizar a Xcode 10.2 nuevamente, mi duplicate line
entrada clave del plist
archivo desapareció. Tuve que agregarlo nuevamente. Sin embargo, la combinación de teclas todavía estaba allí.
EDITAR: 23 de diciembre de 2018
Después de actualizar a Xcode 10.1, todos mis atajos se volvieron a romper. Pero algo diferente fue que después de actualizar el archivo plist para la duplicación de líneas, no tuve que definir mis asociaciones de teclas, ya estaban allí. Extraño.
EDITAR: 14 DE
OCTUBRE DE 2018 Xcode 10: A alguien en Apple le encanta copiar / pegar, y se asegura de que con cada versión de la actualización de Xcode, la duplicación de línea se elimine de la instalación de todos. Los desarrolladores nos hemos sentido extremadamente frustrados por esta tontería que ocurre en Xcode desde siempre, el único IDE sin opción de duplicación de línea. Acabo de actualizar a Xcode 10 y, como lo adivinó, todas mis teclas de acceso directo se eliminan junto con mi funcionalidad de duplicación de línea. Sin embargo, es reparable como en la respuesta original. Una ligera diferencia esta vez es que necesitará la siguiente línea:
<key>Duplicate Current Line</key>
<string>selectLine:, copy:, moveToBeginningOfLine:, paste:, moveToEndOfLine:</string>
EDITAR: Xcode 9: tuve que rehacer mis atajos y la duplicación y eliminación de líneas, pero lo bueno es que ahora puede editar IDETextKeyBindingSet.plist nuevamente. Este chico de Apple debe estar de vacaciones cuando lanzaron esta versión.
EDITAR: Xcode 8: Buggy, no puede modificar el archivo IDETextKeyBindingSet.plist en absoluto. Xcode lo restablece al inicio. Este tipo alto en Apple está realmente decidido a hacernos usar copiar / pegar en lugar de una simple duplicación de línea como en todos los demás IDE que existen.
EDITAR: Xcode 7.1 y todavía no hay atajos para la duplicación y eliminación de líneas. Este es el único IDE con el que he trabajado sin esos atajos. Y no puedo imaginar la vida de un desarrollador sin estos dos atajos críticos.
Así es como se puede hacer:
Primero necesitamos modificar un archivo plist que vive dentro del paquete Xcode.app (necesita sudo para editar)
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist
Luego busque <key>Insertions and Indentations</key>
y debajo de la <dict>
etiqueta agregue lo siguiente:
<key>Insert New Line Below</key>
<string>moveToEndOfLine:, insertNewline:</string>
<key>Insert New Line Above</key>
<string>moveUp:, moveToEndOfLine:, insertNewline:</string>
<key>Duplicate Current Line</key>
<string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string>
Luego encuentre el y estos dentro de la sección <key>Deletions</key>
debajo de la <dict>
etiqueta:
<key>Delete Current Line</key>
<string>selectLine:, delete:</string>
<string>selectLine:, delete:</string>
Ahora abra / reinicie Xcode, vaya a Preferencias y vaya a la pestaña "Asignaciones de teclas". Use la barra de búsqueda para filtrar y buscar los nuevos atajos. Luego haga clic delante de la descripción del acceso directo para asignarle un acceso directo de su agrado. Asegúrese de que su acceso directo no entre en conflicto con los accesos directos existentes.