Después de algunas búsquedas, llegué a saber que :echo @%
muestra el nombre del archivo actual en la línea inferior de vim-screen.
Me gustaría volcar el nombre de archivo (con y sin ruta completa) en el contenido del archivo sin salir vim
.
¿Hay alguna forma de hacer esto?
<c-r>
asignado como comando rehacer?<c-r>
especifica que el siguiente carácter es un registro."%p
en modo normal o visual.Como se puede ver en
:h registers
, el"%
registro contiene el nombre del archivo actual. El:pu[t]
comando inserta el contenido de un registro en el texto.Entonces, para insertar el nombre de archivo real, puede escribir cualquiera de estos, en modo comando:
o
Para insertar el nombre de archivo con la ruta completa, escriba
en modo comando.
Más información:
Al escribir
"rp
puede pegar el contenido del registro"r
.fuente
:put "%:p"
no parece funcionar para mí. Parece funcionar solo con expand () , como en:,:put =expand('%:p')
lo que lo hace no mucho menos engorroso que<c-r>=expand('%:p')
desafortunadamente.Una forma simple es ejecutar:
!!
está reemplazando la línea actual con el resultado del comando que la sigue.%
se reemplaza por el nombre del archivo editado en el comando para que esto efectivamente inserte ese nombre en el archivo editado.El nombre de archivo es el que pasó al comando vi (m) y puede contener una ruta relativa o absoluta. Si desea eliminarlo y solo conservar el nombre del archivo, ejecute
fuente
Si necesita hacer esto con frecuencia, puede ser útil vincular una secuencia de teclas a lo que desea, según http://vim.wikia.com/wiki/Insert_current_filename
Todo lo anterior funciona directamente
vim
para la sesión, o puede ponerlo en el.vimrc
(donde los dos puntos iniciales en la línea son opcionales).fuente
Estaba buscando en Google la forma más simple de insertar el nombre del archivo actual (sin ruta o extensión) a la posición actual (sin nueva línea, sin reemplazar la línea actual). Entonces, combinando respuestas anteriores y este enlace , esto es lo que estaba buscando.
En modo de inserción :
Luego, la próxima vez (con el comando ya en el historial):
fuente