Edición de varios cursores en Xcode 10

89

¿Qué es la 'edición de varios cursores' en el editor Xcode 10? (Se menciona más información sobre el mismo en las notas de la versión, pero no se puede entender).

¿Cómo funciona exactamente?

Krunal
fuente
3
se usa para permitir editar rápidamente múltiples rangos de código a la vez
Anbu.Karthik
2
Buena pregunta en realidad. Encontré esta publicación de Twitter sobre este asunto que parece hablar sobre algún complemento / solución de terceros. Sin embargo, no estoy seguro de cómo ingresar a ese modo de edición.
LinusGeffarth
3
Consulte developer.apple.com/videos/play/wwdc2018/102/?time=2518 para una demostración rápida
Hamish

Respuestas:

178

Para editar varias instancias de texto dentro de diferentes secciones de un documento, puede utilizar la edición de varios cursores. Esto permite colocar varios cursores en diferentes lugares para que se pueda agregar, modificar o eliminar texto .

es el nombre del Editor de fuentes , para fines de referencia tomé la respuesta de whats-new-in-xcode10 y Sample link 1 y Sample link 2

El editor de código fuente de Xcode 10 ahora admite la edición de varios cursores, lo que le permite editar rápidamente varios rangos de código a la vez.

  • shift+ control+ clic
  • shift+ control+
  • shift+ control+
  • option + arrastrar

Con un proyecto habilitado para control de código fuente, el editor de código fuente muestra los cambios realizados por un desarrollador en la cuneta y muestra los cambios realizados por otros desarrolladores que aún no se han incorporado al proyecto.

Anbu.Karthik
fuente
1
@MarcusJ - Modifiqué la respuesta, es fácil de entender, para la muestra que obtienes aquí
Anbu.Karthik
2
Ojalá hubieran hecho comando + clic como Sublime.
Eric Mentele
5
@Dan simplemente cambia el método abreviado de teclado para "Seleccionar siguiente ocurrencia" Cmd + Den las preferencias :)
RyanM
1
Para seleccionar varias líneas, simplemente use "Shift + Ctrl + Arrastrar" en Xcode10, lo que podría lograr con "Cmd + Arrastrar" antes ✌️✌️✌️✌️
Mohit G.
1
@Dan, mira mi respuesta .
Iulian Onofrei
22

La mejor forma de utilizarlo es mediante el Select Next Occurrencecomando del Findmenú.

Su método abreviado de teclado predeterminado es alt+ cmd+ e, pero puede configurarlo en cmd+ dpara imitar el comportamiento de Sublime Text.

De esta manera, puede editar líneas de código que son diferentes, mientras que las soluciones en las otras respuestas solo le permiten editar líneas similares.

Por ejemplo, si tiene este código:

NSString *myStringg = @"stringg";
// print the stringg
NSLog(@"Here is my stringg: %@", myStringg);

tu simplemente:

  1. seleccione manualmente la primera Stringgaparición de la primera línea usando el cursor
  2. presione el Select Next Occurrenceatajo de teclado de 4 veces
  3. presione la righttecla de flecha
  4. golpear backspace

y tendrás:

NSString *myString = @"string";
// print the string
NSLog(@"Here is my string: %@", myString);
Iulian Onofrei
fuente
6

Shift+ Ctrl+ click cuando desee editar el mismo texto en un archivo varias veces, por ejemplo

    option_A.isEnabled = false
    option_B.isEnabled = false
    option_C.isEnabled = false
    option_D.isEnabled = false

en esto tengo que poner verdadero en las cuatro líneas, entonces debería ser mejor hacerlo de una vez usando shift+ control+ enclick lugar de editar cada línea

jagdeep singh
fuente
2

También hay un atajo de teclado disponible para aquellos como yo que usan cmd+ Shift+ Len Sublime.

Se llama Selection - Split Selection By Lines. Lo puse en cmd+ Shift+ Lpero tuve que configurar el Show Libraryatajo en algo más aleatorio que no uso para resolver el conflicto.

Sonastra
fuente
Para mí en Select All Find Matcheslugar de Selection - Split Selection By Linestrabajar.
limfinity