Alternativa vi / vim a "Expandir selección al alcance" de sublimetext


13

El texto sublime tiene una característica interesante llamada " Expandir selección al alcance " MAYÚS + CMD + ESPACIO que selecciona todo lo que está dentro del alcance.

Selecciona todo en el alcance, funciona perfectamente () o [] o {} repitiendo, expande el alcance a su padre.

Estoy buscando lograr lo mismo con vim.

Respuestas:


22

Si quería decir vimque puede hacer esto con visual-mode ( :help visual-mode) y text-objects ( :help text-objects).

Para seleccionar un bloque entre llaves, haga lo siguiente: v+ a+ {, para seleccionar el bloque que lo encierra, repita a+ {. Tenga en cuenta que puede elegir seleccionar solo el contenido de las llaves usando en ilugar de a.

Estos comandos, como muchos otros en vim, se crean mediante una acción seguida de un objeto de texto, donde el objeto de texto puede anteponerse por un número para incluir más objetos afectados por la acción. Así también se puede eliminar el objeto mediante la sustitución vpor do corregirlo con c, etc.

Hay objetos de texto para muchas otras cosas además (), {}y [], por ejemplo:

  • a+ wsignifica una palabra.
  • a+ ssignifica una oración.
  • a+ psignifica un párrafo.
  • a+ <significa un <>bloque.
  • a+ 'significa una cadena entre comillas simples.
  • a+ "significa una cadena entre comillas dobles.

También puede estar interesado en el complemento surround que le permite agregar / reemplazar / eliminar caracteres circundantes o incluso etiquetas.


Sí, me refería a vim. Gracias. ¿hay alguna manera de seguir expandiéndolo, por ejemplo, [[[event touchesForView: button] anyObject]si el cursor está cerca de la touchesForViewacción v+ a+ [selecciona [event touchesForView: button]Me gustaría expandir un nivel más? es decir,[[[event touchesForView: button] anyObject]
palaniraja

3
@palaniraja: sí, puede anteponer el objeto de texto por un número, por ejemplo: v+ 2+ a+ [.
Thor

6

El complemento vim-expand-region permite extender / reducir la región visualmente seleccionada a un conjunto (configurable) de objetos de texto. Es decir, puede comenzar con la selección de una variable, luego la asignación, luego el bloqueo, luego la función, etc.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.