GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo usar marcadores y realizar una selección de texto en Vim

Cuando se utilizan editores de código fuente/texto basados ​​en GUI, se dan algunas funciones, como la selección de texto. Quiero decir, la mayoría de nosotros ya ni siquiera consideraremos esto como una característica. Pero ese no es el caso con los editores basados ​​en línea de comandos como Vim. Específicamente para Vim, cuando solo use el teclado, tendrá que aprender ciertos comandos para seleccionar el texto de la manera que desee. En este tutorial, discutiremos esta función, así como la función de "marcas" de Vim en detalle.

But before we start doing that, it's worth mentioning that all the examples, commands, and instructions mentioned in this tutorial have been tested on Ubuntu 16.04, and the Vim version we've used is 7.4.

Suponiendo que tiene los conocimientos básicos sobre el editor Vim (¿No? No hay problema, solo diríjase aquí), sabrá que el comando 'd' le permite cortar/eliminar una línea. Pero, ¿y si quieres cortar, digamos, 3 líneas? Su respuesta podría ser:'repita el comando tres veces'. Bien, pero ¿y si el requisito es cortar un párrafo completo (o, digamos, un par de ellos)? ¿Contar primero el número de líneas manualmente y luego ejecutar el comando 'd' (incluso si usa '[n]dd') es una solución práctica?

No, no es. Una mejor solución, en este caso, sería seleccionar las líneas que desea cortar/eliminar y luego ejecutar el comando 'd' solo una vez. He aquí un ejemplo:

Supongamos que quiero cortar/eliminar el primer párrafo completo de la sección INTRODUCCIÓN que se muestra en la siguiente captura de pantalla:

Entonces, lo que haré es llevar el cursor al comienzo de la primera línea y (asegurándome de que no esté en el modo Insertar) escribir el comando 'V' (Shift+v). Esto dará como resultado que se seleccione la primera línea y que Vim habilite el modo Visual Line.

Ahora, todo lo que tengo que hacer es usar la tecla de flecha hacia abajo para seleccionar todo el párrafo.

Así que eso es lo que queríamos, ¿verdad? Ahora simplemente presione 'd' y el párrafo seleccionado será cortado/borrado. No hace falta decir que, además de cortar/eliminar, puede realizar cualquier otra opción en el texto seleccionado.

Esto nos lleva a otro aspecto importante:no siempre necesitamos eliminar la línea o líneas completas; que hacer en esos casos? Lo que eso significa es que la solución que acabamos de discutir solo funciona cuando desea realizar operaciones en líneas completas. ¿Qué sucede si el requisito es eliminar las tres primeras oraciones de un párrafo?

Bueno, también hay un comando para esto:solo use 'v' en lugar de 'V' (sin comillas simples, por supuesto). El siguiente es un ejemplo en el que usé 'v' y luego seleccioné las tres primeras oraciones del párrafo:

Continuando, a veces los datos con los que está tratando consisten en columnas separadas, y el requisito puede ser seleccionar una columna en particular. Por ejemplo, considere la siguiente captura de pantalla:

Supongamos que el requisito es seleccionar solo el nombre de los países, lo que significa la segunda columna del texto. Entonces, lo que puede hacer en este caso es colocar el cursor debajo del primer elemento de la columna en cuestión y presionar Ctrl+v una vez. Ahora, usando la tecla de flecha hacia abajo, seleccione la primera letra del nombre de cada país:

Y luego, usando la tecla de flecha derecha, seleccione la columna completa o los nombres completos.

Consejo :En caso de que deseleccionó un bloque de texto por algún motivo y ahora desea volver a seleccionarlo, simplemente presione 'gv' en el modo de comando.

A veces, mientras trabaja en un archivo grande (por ejemplo, un archivo de código fuente o un script de shell), es posible que desee cambiar a una ubicación particular y luego volver a la línea donde estaba originalmente. Eso no es un problema si las líneas en cuestión no están muy lejos o si tiene que hacer esto de vez en cuando.

Pero lo que es al revés:tiene que saltar con frecuencia entre su ubicación actual y varias líneas lejanas en el archivo. Bueno, la solución en ese caso es usar marcas. Simplemente marque su ubicación actual, luego regrese a esta ubicación desde cualquier parte del archivo mencionando el nombre de la marca.

Para marcar una línea en vim, use la m comando seguido de un alfabeto que representa el nombre de la marca (las opciones disponibles son a-z en minúsculas). Por ejemplo, ma . Ahora, para volver a la marca a , utilice la 'a comando (comillas simples incluidas).

Consejo :Puede usar apóstrofe (' ) o acento grave (`) depending on whether you want to jump to the beginning of the marked line, or specifically to la línea y la columna de la marca.

Puede haber varias otras aplicaciones útiles de los marcadores Vim. Por ejemplo, puede poner una marca en una línea, luego ir a otra línea y ejecutar el siguiente comando:

d'[mark-name]

para borrar todo entre su posición actual y la línea marcada.

Continuando, aquí hay un tid-bid importante de la documentación oficial de Vim:

Each file has a set of marks identified by lowercase letters (a-z). In addition there is a global set of marks identified by uppercase letters (A-Z) that identify a position within a particular file. For example, you may be editing ten files. Each file could have mark a, but only one file can have mark A

Entonces, si bien hemos discutido el uso básico de los alfabetos en minúsculas como marcas Vim, cómo y dónde son útiles las letras mayúsculas. Bueno, el siguiente extracto lo deja muy claro:

Because of their limitations, uppercase marks may at first glance seem less versatile than their lowercase counterpart, but this feature allows them to be used as a quick sort of "file bookmark." For example, open your .vimrc, press mV, and close Vim. The next time you want to edit your .vimrc, just press 'V to open it. 

Y finalmente, para eliminar una marca, use el comando 'delmarks'. Por ejemplo:

:delmarks a

El comando mencionado eliminará la marca a del archivo Por supuesto, si elimina una línea que contiene una marca, esa marca también se elimina automáticamente. Para obtener más información sobre las marcas, diríjase a la documentación de Vim.

A medida que comienza a usar Vim como su editor principal, las características como las que se explican en este tutorial se convierten en herramientas útiles que le ahorran mucho tiempo. Como estará de acuerdo, no hay mucha curva de aprendizaje involucrada con las funciones de selección y marcas que se explican aquí; todo lo que se requiere es un poco de práctica.

Para obtener la cobertura completa de los artículos relacionados con Vim en HowtoForge, diríjase aquí.


Linux
  1. Cómo instalar y usar el administrador de complementos Vim-plug en Linux

  2. Cómo instalar Vim (vi) en Windows 10

  3. Cómo insertar texto al comienzo de cada línea en Vim

  4. Cómo instalar y usar la herramienta de línea de comandos Mosh Linux

  5. Cómo agregar una línea de encabezado y final a un archivo en Linux

Cómo instalar y usar Vim Editor en Linux

Cómo instalar y usar Nano Editor en Ubuntu 20.04

Cómo usar Ansible para configurar Vim

Cómo instalar y usar Sublime Text 4 en Linux

Cómo encontrar y reemplazar texto en Vim

Esquemas de color en Vim:cómo cambiarlos y usarlos