Vim Registro Uso en modo EX
-
18-09-2019 - |
Pregunta
Potencialmente 2 preguntas en una. Me gustaría saber cómo hacer referencia a un registro en modo Ex.
Por ejemplo, yo estoy editando un archivo y quiero guardar el archivo con una marca de tiempo (o simplemente marca de fecha en realidad) anexado a él.
Sé que puedo establecer registro con el valor de una concha de comandos de salida usando:
:let @a = system("date +\"%Y-%m-%d\"")
¿Hay alguna a eliminar la referencia de este registro e insertar su valor en un comando Ex? Algo así como:
:w testfile.<value of "a register>
Copia al portapapeles del sistema y pegar sería bueno, pero hacerlo de una manera más genérica / programitic para la construcción de otros comandos en el futuro sería bueno.
Solución
Hay dos enfoques para hacer esto, pero probablemente no es exactamente lo que quiere.
-
Uso
<CTRL-R>a
para insertar el contenido en la línea de comandos actual. Ver:help c_CTRL-R
para obtener más información. -
Uso
exe
para permitir la inserción de variables en la expresión. Ver:help :exe
y:help 41.3
.:exe 'w testfile.' . @a
Otros consejos
Suponiendo registrar "un", puede escribir:
<CTRL-R>a
que será de entrada el valor del registro A en línea en ese punto. Esto se puede utilizar en el modo de inserción también.