¿Cómo se pegan varias líneas con pestañas en Vi?[cerrado]
Pregunta
Quiero pegar algo que corté de mi escritorio en un archivo abierto en Vi.
Pero si pego las pestañas, se incrustan una encima de la otra en toda la página.
Creo que es algún tipo de cambio de modo visual pero no encuentro el comando.
Solución
Si estás usando vi simple:
Probablemente tengas autoindent
en.Para desactivarlo mientras pega:
<Esc> :set noai
<paste all you want>
<Esc> :set ai
tengo en mi .exrc
los siguientes atajos:
map ^P :set noai^M
map ^N :set ai^M
Tenga en cuenta que estos tienen que ser los caracteres de control reales; insértelos usando Control-V Control-PAG etcétera.
Si estás usando vim:
Utilizar el paste
opción.Además de desactivar autoindent
También establecerá otras opciones como textwidth
y wrapmargin
para pegar valores predeterminados fáciles de pegar:
<Esc> :set paste
<paste all you want>
<Esc> :set nopaste
También puede configurar una tecla para alternar el modo de pegar.Mi .vimrc
tiene la siguiente línea:
set pastetoggle=<C-P> " Ctrl-P toggles paste mode
Otros consejos
Si está utilizando VIM, puede utilizar "*p (es decir,comillas dobles, asterisco, letra p).
Descubrí que si copio líneas con pestañas primero en un editor de texto y luego las vuelvo a copiar desde allí a vim, entonces las pestañas son correctas.