Viniendo de Eclipse y habiendo sido usado para duplicar líneas todo el tiempo, es bastante extraño descubrir que Xcode no tiene tal función. O lo hace?
Sé que es posible cambiar las combinaciones de teclas de todo el sistema, pero eso no es lo que busco.
xcode
line
duplicate-data
Verano
fuente
fuente
Respuestas:
El punto no es utilizar los accesos directos
Cmd-C
/Cmd-V
. Tengo el mismo problema proveniente de IntelliJ, y poder duplicar líneasCmd-D
y eliminarlasCmd-Y
es un gran ahorro de tiempo.Me ha estado molestando desde entonces. Sin embargo, parece que alguien más ha encontrado una solución que funciona.
En resumen, cree un archivo
~/Library/KeyBindings/PBKeyBinding.dict
con el siguiente contenido y reinicie Xcode.Esto creará dos accesos directos: Ctrl- Shift- Kpara borrar la línea actual y Ctrl- Shift- Dpara la duplicación de la línea actual. Tenga en cuenta que esto solo funcionará si NO está utilizando un conjunto de enlaces de teclas personalizado en Xcode. Cambie a "XCode Default" y las cosas deberían funcionar. Probado en XCode 3.2 en Snow Leopard.
Más información sobre las combinaciones de teclas de Mac OS X: http://funkworks.blogspot.it/2013/03/republishing-of-wwwerasetotheleftcompos.html
fuente
Duplicate
comando (inEdit -> Duplicate
) parece estar "siempre" en gris (y no para duplicar la línea).Para eliminar una línea : Ctrl-A para ir al principio de la línea, luego Ctrl-K para eliminarla y otra vez Ctrl-K para eliminar la línea vacía. (No uso Xcode muy a menudo, pero estoy acostumbrado a eso en Emacs y otras entradas de texto con enlaces tipo Emacs, y parece que también funciona en Xcode).
Y para duplicar una línea : no conozco muchos programas que tengan un comando para eso, pero generalmente solo uso Copiar + Pegar, en Xcode es como CUA: Ctrl+A para ir al comienzo de la línea,Shift +↓ para seleccionar él, Comando + Cpara copiar y Comando + * Vpara pegar dos veces (una vez anulando la línea y una vez añadiéndole).
(de una persona que escribe y edita texto todo el tiempo, muy a menudo en diferentes programas, y ocasionalmente se enoja por tener que distraerse con un widget tonto mientras hace una pequeña corrección en una entrada de texto, que simplemente no puede evitar recordar estas secuencias y hábitos)
fuente
Eliminar una línea como eclipse CTRL+D (probado en Xcode 4.5.1):
En primer lugar, cambie estos derechos:
Abra
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist
con Xcode y agregue esta nueva entrada:Reinicie Xcode y abra Xcode> Preferencias> Asignaciones de teclas. Encuentra tu macro y define una tecla abreviada:
fuente
Probé la solución de las combinaciones de teclas, pero no pude hacer que funcionara. Sin embargo, editar mis asociaciones de teclas XCode funciona de maravilla. Así es como lo hice.
¡Esta solución no altera el contenido del Portapapeles!
Abra las asociaciones de teclas XCode:
En el cuadro de diálogo Editar guiones de usuario:
Línea duplicada:
Duplicar línea abajo:
fuente
OK, así que tuve esto funcionando por un tiempo y de repente se rompió. Ahora me he combinado de diferentes publicaciones aquí y he encontrado una solución que funciona para XCode 6.3.1.
Ve a
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/
con Finder.busque la carpeta llamada Recursos. Haga clic con el botón derecho, presione Obtener información, desbloquee la configuración de compartir y permisos (Al presionar el bloqueo) y configúrelo en Leer y escribir para todos.
Ingrese la carpeta y busque el archivo IDETextKeyBindingSet.plist. Haga clic con el botón derecho, presione Obtener información, desbloquee la configuración de compartir y permisos (Al presionar el bloqueo) y configúrelo en Leer y escribir para todos.
Abra el archivo con XCode (predeterminado)
Encuentre eliminaciones, haga clic derecho y agregue una nueva fila. Póngale un nombre, por ejemplo, Eliminar línea. En el campo Valor, escriba:
selectLine:, deleteBackward:
. (Esto también se puede hacer por línea duplicada:selectLine:,copy:,moveToEndOfLine:,insertNewline:,paste:,deleteBackward:
)fuente
Como Xcode 4 hace que esto sea difícil de implementar usando las combinaciones de teclas, he recurrido al uso de Keyboard Maestro ( Quickeys también debería funcionar bien, pero no es totalmente compatible con Lion). Por ejemplo, aquí está mi atajo de Keyboard Maestro (vinculado a ⌘-⇧-D):
http://bit.ly/thC6yf
fuente
Para eliminar la línea en Xcode 10.1, siga los pasos de la siguiente captura de pantalla para agregar una tecla de acceso directo.
fuente
Sé que este hilo es bastante antiguo, pero encontré otra solución con BetterTouchTool , puede ejecutar la secuencia Ctrl+ A, Ctrl+ K, Ctrl+ Ken un acceso directo configurando así en BTT:
(Use el botón Adjuntar acción adicional para agregar el segundo y tercer acceso directo)
PD: Viniendo de Eclipse donde Cmd+ Des la línea de eliminación ^^
fuente
Haga clic tres veces para seleccionar la línea completa, comando-c para seleccionar y comando-v dos veces para duplicarla. No es una función Xcode, es solo parte del sistema operativo.
fuente
Utiliza scripts de usuario.
Todavía hay scripts para mover y eliminar líneas. Debe definir las combinaciones de teclas para esos scripts (menú Scripts -> Editar scripts de usuario ...Debe definir enlaces de , en xCode 3.2).
Para duplicar la línea, debe crear su propio script. ¡Pero es muy simple! Duplique la secuencia de comandos "Mover línea hacia abajo" y elimine la línea que elimina el texto seleccionado:
fuente
Hay una solución para la duplicación de línea XCode4 sobre aquí
También agregué la eliminación de línea al plist:
<key>Remove Line</key> <string>selectLine:, deleteBackward:</string>
fuente
Estamos en Xcode 9.0 y las combinaciones de teclas todavía no funcionan. Suspiro.
Encontré esta esencia muy útil, así que volví a publicarla aquí para referencia futura:
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/IDETextKeyBindingSet.plist
</dict>
<key>Duplication</key> <dict> <key>Duplicate Current Line</key> <string>moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, moveToBeginningOfLine:, yank:</string> <key>Duplicate Lines</key> <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string> <key>Delete Line</key> <string>selectLine:, deleteBackward:</string> </dict>
fuente
No es necesario modificar Xcode. Simplemente puede usar la extensión Xcode Linex
fuente
La solución de damien.flament funciona muy bien y es posible que necesite configurar la salida como "Descartar salida", vea la imagen a continuación
PD: No sé cómo comentar su respuesta.
fuente
Como se dijo anteriormente, cierre XCode e inserte lo siguiente
~/Library/Application Support/Xcode/Key Bindings/ <user>.pbxkeys
dentro<dict>
de la<key>text</key>
sección:Inicie XCode y disfrute CTRL- SHIFT- Dy CTRL- SHIFT- K.
Si quieres CTRL- Dy CTRL- K, usa
^d
y^k
en definiciones clave. Asegúrese de que no haya enlaces de teclas duplicados en el archivo.Funciona bien para mí con XCode 3.2
fuente
Esto es posible con BetterTouchTool . CMD + D duplicará una línea. Crea un nuevo atajo como este:
Use el botón Adjuntar acción adicional para agregar el segundo y tercer acceso directo
fuente
Si ya ha personalizado sus asociaciones de teclas Xcode, que tendrá que editar el archivo:
~/Library/Application Support/Xcode/Key Bindings/<user>.pbxkeys
. Simplemente agregue las dos matrices (descritas anteriormente) alRoot/text
diccionario.fuente
Tres pasos para eliminar la línea actual (ver demasiado tiempo, pero hacerlo muy rápido: D)
Cmd+ →: mover al final de la línea
Cmd+ Delete: eliminar al comienzo de la línea
Delete: eliminar la línea vacía
fuente
Para Xcode 6.1 llegó a Xcode> Preferencias> Asignaciones de teclas> Texto Y hay "Eliminar hasta el final de la línea" y asigne la tecla que desee.
fuente
El complemento de línea de eliminación XCodePlus es un XCode que hace esto por usted. Vino preinstalado con el administrador de paquetes Alcatraz ...
https://github.com/payliu/XcodePlus
fuente
Aún no hay una forma integrada de duplicar líneas, a partir de Xcode 9. Y las combinaciones de teclas personalizadas parecen tener problemas.
Actualización: Xcode 10.0 beta 6 (10L232m) es lo mismo.
fuente
Ve a esta dirección:
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet
y luego copie el archivo IDETextKeyBindingSet.plist en algún lugar y luego abra el archivo copiado e inserte
selectLine :, copy :, paste :, paste: como esta imagen ingrese la descripción de la imagen aquí y guárdela y reemplace el archivo copiado en esta dirección /Aplicaciones/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet
luego reinicie xcode, abra las preferencias de xcode, vaya a la pestaña de asignación de teclas, busque una línea duplicada (personalizada) y defina una tecla corta para ella como la imagen a continuación
[1]: https://i.stack.imgur.com/UTeZu.png
fuente