¿Qué son los registros Vim?

Que Son Los Registros Vim



Los registros Vim son bloques de almacenamiento que se utilizan para almacenar texto y operaciones extraídos y eliminados. Se puede acceder a estos registros utilizando sus nombres de etiquetas, que pueden ser un número, una letra o un símbolo.

Si está utilizando Vim, debe utilizar los registros de Vim. Cada vez que copia/elimina texto o realiza una operación de comando, Vim almacena esta información en los registros. Cuando lo pegas, Vim obtiene los datos del registro y los introduce en el búfer. En otras palabras, los registros de Vim actúan como un portapapeles para almacenar el texto y el historial de comandos.

Vim tiene un total de 10 tipos distintos de registros, cada uno de los cuales tiene un propósito distinto. En este tutorial, exploraré los registros de Vim, sus tipos y uso.







Nota : Para este tutorial, estoy ejecutando comandos en macOS. Vim es una aplicación multiplataforma, por lo tanto, los comandos mencionados en esta guía se aplicarán a todas las versiones de Vim independientemente del sistema operativo.



Operadores de registro Vim

Los registros en Vim se pueden emplear mediante operaciones como copiar, eliminar o cambiar. Cada operación tiene operadores específicos, como por ejemplo, para extraer texto se utiliza el operador y, mientras que para eliminar texto se utiliza el operador d. A continuación se proporciona una lista de operadores comúnmente empleados:

yy Yanks (copia) la línea
dd Elimina la línea
cc Elimina la línea y habilita el modo INSERT
s Elimina el carácter e inicia el modo INSERT para sustituirlo.
X Elimina el carácter debajo del cursor.
q Macro; almacena el conjunto de comandos en un registro específico

Para imprimir el texto almacenado, pag o PAG Se utilizan operadores:

pag Poner (pegar) el texto después del cursor
PAG Pon el texto antes del cursor.

Estos comandos también cuentan. Por ejemplo, para copiar 10 líneas utilice el 10aa comando, de manera similar para pegar las 10 copias de una línea arrancada use 10p .

Registros de listado

Para enumerar todos los registros utilice el :registro o :reg comando, y para enumerar el registro específico utilice el :reg, donde es el nombre del registro (por ejemplo, 0-9, a-z).

De la misma manera, para listar el contenido de múltiples registros, use el :reg “ dominio.

En la lista de registros, verá tres columnas, Nombre, tipo y contenido . Aquí, Tipo significa el tipo de contenido, no el tipo de registro. Tres tipos del contenido se puede modificar con registros.

  • yo : Línea a línea
  • C : En cuanto a personajes
  • b : Bloqueo

Por ejemplo, si el contenido se copia mediante una operación de línea (aa) entonces el tipo de contenido será yo , si es por carácter (Sí) entonces el tipo será C , y si el contenido se copia en bloques (ctrl+v e y) entonces el tipo se mostrará como b .

Trabajar con registros Vim

Los registros de Vim se pueden utilizar para almacenar el contenido mediante los operadores de extracción, eliminación y cambio. Se puede acceder al contenido almacenado mediante los operadores de venta.

Guardar texto en un registro
Cuando presionas el yy clave para copiar una línea, se guardará en el registro predeterminado llamado registro sin nombre (“”) . Para almacenar la línea copiada en un registro específico, la cotización (“) seguido del nombre del registro y del operador.

'

Por ejemplo, para copiar una línea a un nombre de registro Con usar ' zyy . De manera similar, si ha seleccionado varias líneas en el modo VISUAL, use ' zy para almacenar las líneas en el registro z.

Accediendo al Registro
Para acceder al registro de Vim, la cotización (“) El símbolo se utiliza con el nombre del registro y páginas operador.

'p

Por ejemplo, si el nombre del registro es z y para acceder al contenido de este registro utilice “ zp en el modo NORMAL. Sin embargo, para realizar la misma operación en el modo INSERT, use Ctrl+rZ .

Modo normal Para almacenar el contenido utilice la cita. (“) , nombre del registro (Arizona) y operador (y, aa, d, c o cc)
p Modo normal Para pegar el contenido de un registro utilice cotización (“) , nombre del registro (Arizona) y páginas operador
Ctrl+r Modo INSERTAR Para pegar el contenido de un registro, utilice control+r y registrar el nombre (Arizona)

Tienes la idea básica de los registros de Vim. Ahora, analizaré en profundidad cada tipo de registro y su uso.

Tipos de registros Vim

En Vim, existen 10 tipos de registros, diseñados para propósitos específicos.

  1. Registro sin nombre (“”)
  2. Registros numerados (0-9)
  3. Registro de eliminación pequeño (“-)
  4. Registros con nombre (a-z o A-Z)
  5. Registros de sólo lectura (“:, “., “%)
  6. Registro de archivo alternativo (“#)
  7. Registro de expresión (“=)
  8. Registros de selección y eliminación (“*, “+, +~)
  9. Registro de agujero negro (“_)
  10. Registro del último patrón de búsqueda (“/)

1. Registro sin nombre (“”)

Es el registro predeterminado de Vim para almacenar texto eliminado o eliminado usando y, yy, d, dd, s, o X comandos.

El :reg “” El comando se puede utilizar para enumerar el contenido almacenado en el registro sin nombre.

Para pegar el contenido del registro sin nombre, use el comando put (p o P) dominio. Por defecto, el pag El comando coloca los almacenes de contenido en el registro sin nombre. Alternativamente, los datos almacenados en el registro sin nombre también se pueden pegar usando el comando “”p.

En el siguiente ejemplo, he copiado una línea usando yy comando y luego póngalo 5 veces usando la cuenta 5 con p (5p).

2. Registros numerados (0-9)

Los registros numerados se utilizan para almacenar el último texto eliminado o eliminado.

El registro 0 es diferente de los registros 1-9 . El registro 0 siempre almacenará el último texto extraído. Por ejemplo, si tiro de una línea usando yy comando, la línea se almacenará tanto en el sin nombre y el 0 registros.

Ahora, si elimino una línea usando dd , la línea eliminada se almacenará en el registro sin nombre y en el registro 1 mientras que el último texto extraído permanecerá en el registro 0 . Por lo tanto, se puede acceder al último texto extraído en cualquier momento a través del registro. 0 .

los registros 1-9 almacenar el último texto eliminado. Por ejemplo, si elimino una línea usando el dd comando, el texto eliminado se almacenará tanto en el registro sin nombre como en el 1 . El registro 1 almacenará el último texto eliminado. Si elimino otra línea, el texto previamente eliminado se moverá para registrarse 2 , y la última se almacenará en el registro y sin nombre 1 . En esencia, los registros numerados. (1-9) almacenar el historial de texto eliminado.

Entendamos el registro numerado con un ejemplo. El siguiente archivo de texto Vim consta de 10 líneas; vamos a tirar del línea 3 usando yy dominio. Ahora, verifiquemos el estado de los registros usando el comando :reg.

La línea arrancada se encuentra actualmente en el sin nombre y 0 registros. Ahora, eliminemos todas las líneas una por una usando el dd dominio. entonces, ultimo linea 10 estará en el registro sin nombre y en el registro 1. Al mismo tiempo, otras líneas eliminadas se almacenarán en los registros 2-9 en orden ascendente.

Se puede acceder a estas líneas utilizando el pag dominio. Por ejemplo, para poner el texto de registro 9 usar “9p . Además si quieres poner el valor de registro 9 5 veces, uso “95 peniques .

3. Registro de eliminación pequeña (“-)

Este registro almacena el texto eliminado si tiene menos de una línea, usando comandos como x, daw, diw, dab, y de nuevo . Además, si elimina algún texto usando VISUAL modo de selección, y si es menor que una línea, entonces se almacenará en el pequeño registro de eliminación. En Vim, una línea significa una oración completa que termina con un punto.

Por ejemplo, en el siguiente archivo, seleccioné 3 palabras colaboración y apoyo de la línea número 9 y los eliminé usando el d operador. El pequeño registro de eliminación se utilizará para guardar esta selección, ya que no tiene más de una línea. Utilizar el :reg “- comando para enumerar el contenido del pequeño registro de eliminación.

4. Registros con nombre (a-z o A-Z)

Los registros nombrados se utilizan para almacenar texto específico del usuario. Entonces, si desea almacenar texto en un registro personalizado, entonces 26 registros de a a Con puede ser usado.

Por ejemplo, estoy sacando una línea en el siguiente archivo usando ' zyy , el texto se almacenará en el Con registrarse como se muestra en la siguiente imagen.

Los registros con nombre en minúsculas y mayúsculas tienen diferentes propósitos. Por ejemplo, si el texto se guarda en el registro de minúsculas, para reemplazar el texto de ese registro se utilizará el registro de minúsculas. Sin embargo, para añadir el texto al registro de minúsculas, se utilizará el registro de mayúsculas con el mismo nombre.

Comprendámoslo a través de un ejemplo. Del siguiente archivo, almacené la línea 8 en el registro X usando ' xyy .

Para agregar texto después de esta línea, primero seleccionaré algunas palabras en el modo VISUAL. Para agregar el texto seleccionado, usaré el “Xy dominio.

Para reemplazar el texto, usaré nuevamente el “ xyy .

5. Registros de sólo lectura (., %, 🙂

Vim tiene 3 registros de solo lectura que almacenan lo insertado texto, nombre de archivo, y último ejecutado dominio.

. Almacena el último texto insertado
% Almacena el nombre del archivo
: Almacena el último comando ejecutado

Estos registros, como sugiere el nombre, no se pueden modificar, sin embargo, se puede acceder a ellos fácilmente.

Para poner el último texto insertado, utilice el '.pag dominio.

Para imprimir el nombre del archivo, utilice el '%pag dominio.

Para imprimir el último comando, utilice el ':pag.

El @: El comando se puede utilizar para repetir el comando anterior en Vim. En el siguiente ejemplo, he eliminado las primeras 3 líneas, al presionar @: , se eliminan 3 líneas más, por lo que se repite el comando anterior.

6. Registro de búfer alternativo (“#)

El búfer alternativo es un archivo que se abre en el búfer actual. El registro “# almacena el nombre del archivo almacenado en el buffer en el buffer actual. Abramos otro archivo en el mismo búfer usando el :e ~/.vimrc comando, tenga en cuenta que el nombre del archivo actual es archivo.txt .

Para cerrar el búfer abierto, utilice el :beliminar o :bwipeout dominio. Ahora, es posible ver el nombre de archivo alternativo guardado en el “# registro.

7. Registro de expresión (“=)

El registro de expresión es un registro único que no se utiliza para almacenar texto, sino que almacena la expresión. Por ejemplo, si tiene algunos números en el archivo, para sumar estos números, se utilizarán expresiones de Vim.

Se puede acceder a este registro utilizando “= en el modo NORMAL y control+r = en el modo INSERTAR.

Por ejemplo, para encontrar la diferencia entre dos números, presione “= y aparecerá el signo igual en la barra de estado; ahora escriba ambos números con el signo menos (-) y presione el botón Ingresar llave. Ahora, para imprimir la diferencia, presione pag o utilizar el :poner dominio.

Para acceder al valor del registro de expresión, utilice el :reg “= dominio.

De manera similar, para obtener el valor absoluto de dos números, use la =abs(valor1-valor2) expresión.

De la misma manera, para almacenar la salida del comando del sistema, se puede utilizar este registro (de expresión). Por ejemplo, si quiero leer el contenido del archivo usaré =sistema('gato ') , al presionar la tecla Retorno se almacenará el contenido de la salida. Utilizando el pag o :poner comando, el contenido de la salida se puede colocar en el búfer.

Hay una variedad de expresiones que se pueden usar en Vim. Para obtener más información sobre las expresiones de Vim, utilice : expresión de ayuda y : ayuda expresión-sintaxis comandos.

8. Registros de selección y eliminación (“*, “+, “~)

Vim tiene dos registros de selección. “* (quotestar) y “+ (quoteplus) que se utilizan para almacenar el texto de la GUI. Estos registros se utilizan para copiar texto de programas externos como navegadores o cualquier otro procesador de textos.

Por ejemplo, si copia una selección de texto desde un navegador, usando control+c o cmd+c será almacenado en el “* registro. Sin embargo, no puedes utilizar pag o :poner para pegar este texto en el editor Vim. Usar '*pag para poner el texto en el editor Vim que se copia desde aplicaciones externas.

Es importante señalar que ambos “+ y “* Los registros están conectados al portapapeles, por lo que ambos (“*p, “+p) se puede utilizar para pegar el texto en el editor Vim. De manera similar, para poner texto desde Vim, use “*aa para tirar de una línea y luego pegarla en cualquier aplicación GUI, use Ctrl+v o cmd+v.

Es esencial tener en cuenta que si ambos registros (* & +) están haciendo lo mismo, entonces ¿cuál es el punto? Vim tiene dos registros de selección. “*, “+ haciendo el mismo trabajo y eso se debe al sistema de ventanas X11. El X11 proporciona dos métodos para almacenar el texto, uno es trozos escogidos y el otro es buffers de corte . Las selecciones son propiedad de la aplicación y se pierden al cerrar la aplicación, mientras que los buffers de corte mantienen el texto almacenado en el servidor X. Para estos dos tipos de almacenamiento, se utilizan los registros “* y “+. Para obtener más información al respecto, utilice :ayuda x11-selección dominio.

A continuación, el soltar registro “~ que se utiliza para almacenar el texto de la última operación de arrastrar y soltar. Por ejemplo, si suelta una selección de texto desde una aplicación externa, se almacenará en el registro de colocación.

Si le resulta difícil pegar desde la aplicación externa utilizando tres claves diferentes, puede asignar la selección para que se almacene en el registro sin nombre.
Abre el vimrc archivo, conjunto de lugares portapapeles=sin nombre en él y guarde el archivo. Ahora, cada vez que copie desde una aplicación externa, podrá pegarla fácilmente utilizando el :poner comando o tecla p.

Nota : El registro de colocación (~) solo estará disponible si Vim está compilado con +dnd. Actualmente, sólo está disponible para GTK GUI.

9. Registro de agujeros negros (“_)

Si realiza una operación de copiar o eliminar en el editor Vim, de forma predeterminada almacena el texto en los registros. Si desea eliminar el texto sin almacenarlo en un registro, utilice el registro de agujero negro. Este registro no modificará el registro sin nombre (“”) al eliminar texto.

Por ejemplo, si quiero eliminar todas las líneas sin almacenarlas en el registro sin nombre, primero seleccionaré todas las líneas usando ggvg y luego presione '_d teclas para eliminar todas las líneas. De manera similar, para eliminar una sola línea de un agujero negro, use “_dd .

10. Registro del último patrón de búsqueda (“/)

Como sugiere el nombre, este registro guarda el último patrón de búsqueda usando el / o ? operadores. Por ejemplo, si buscas /Linux , luego usando '/pag pegará la palabra Linux.

Vim utiliza este registro para la navegación con el norte y norte claves después de la búsqueda.

Es un registro grabable, su contenido se puede cambiar usando :let. Por ejemplo, para guardar Linux en este registro, utilice :let @/='Linux'.

Registros y macros

En Vim, las macros también se guardan en los registros nombrados (a-z). Si no conoce las macros, las macros son comandos configurados almacenados en un registro. Este conjunto de comandos se puede ejecutar simplemente usando el signo @ seguido del nombre del registro de macro. Básicamente, las macros eliminan la necesidad de escribir varios comandos repetidamente.

Por ejemplo, para almacenar una macro en un registro metro , Usaré qmq . quiero mudarme a la 5 líneas hacia abajo usando 5j y eliminar la línea usando dd . Usar, qm para iniciar la grabación de la macro y luego presione 5j y dd . Ahora, para salir de la grabación de macro, presione q . Para verificar si la macro está almacenada o no, :reg “m o :reg m.

Para ejecutar estos comandos con un registro de macro, utilice el :@metro dominio.

Borrar un registro

No existe un método sencillo para borrar un registro porque la mayoría de los registros no necesitan borrarse porque eventualmente se sobrescribirán. Sin embargo, existen algunas técnicas para borrar un valor de registro en el editor Vim.

1. Grabe una macro vacía para borrar un registro. Por ejemplo, para borrar el registro m, utilice qmq .

2. Establezca texto vacío usando el dejar . Por ejemplo, para borrar el registro m, utilice :dejemos @m=”.

3. Utilice el establecerreg() funciona con una cadena vacía como argumento. Por ejemplo, para borrar el registro m uso :llamar a setreg(‘m’, ”).

Conclusión

Hay 10 registros diferentes con diferentes funcionalidades, lo que hace que sea casi imposible recordarlos. Si es principiante, le recomendaría tener en cuenta sólo tres registros, el registro sin nombre. (“”) , registros numerados (0-9) y registros con nombre (Arizona) .

Para almacenar texto en un registro, utilice una cotización (“) firmar con el nombre del registro seguido de un comando del operador (y, d, c) . Para pegar el texto de un registro, use los comandos p o P precedidos por comillas (“) y nombre del registro.

Debes haber oído hablar de ello, si estás realizando una tarea más de dos veces, automatízala. Los registros de Vim pueden resultar extremadamente útiles para automatizar tareas y, en última instancia, mejorar la experiencia. Para obtener más información sobre los registros de Vim, utilice el :ayuda registros dominio.