Vi & Vim

Preguntas y respuestas para las personas que utilizan las familias vi y Vim de editores de texto.



1
Ejecutar contenido del búfer como vimscript
Tengo un nofilebúfer que contiene vimscript y quiero ejecutarlo. Sin embargo, :so % no funcionará porque requiere un archivo guardado, no un búfer. ¿Hay un comando vim para hacer esto por defecto? Si no, ¿es posible crear una función que haga lo mismo?






2
¿Cómo puedo hacer que ctrlp haga una mejor coincidencia de nombre de archivo?
Mi proyecto tiene estos archivos: $ find . -type f -and -name 'peop*' ./app/assets/stylesheets/admin/sections/people.css.sass ./app/controllers/admin/people_controller.rb Cuando me cansé de escribir :e app/assets/stylesheets/admin/sections/people.css.sass, pensé que ctrlp podría ser una buena manera de guardar algo de escritura. Sin embargo, no puedo hacer que coincida con los archivos en lo que considero una …



2
¿Cómo ejecutar la declaración de Python para cada línea?
Tengo el siguiente código de muestra que modifica la línea actual usando la declaración de Python: :py import vim; vim.current.line="["+vim.current.line+"]" ¿Cómo puedo ejecutar esta declaración para cada línea en el archivo actual? Relacionado: ¿Cómo puedes usar Python en Vim? en stackoverflow

2
¿La forma más eficiente de reemplazar todo el búfer?
Actualmente, tengo dos métodos similares para reemplazar todo el búfer con algún otro texto (digamos en el portapapeles). Método 1: eliminar todas las líneas: :%d. pegar texto: "+P(o similar:) :put+. Método 2: seleccionar visualmente todas las líneas: ggVG. pegar texto: "+P. Sin embargo, no pude encontrar una manera de disparar …

1
¿Cómo puedo evitar que Vim escriba un archivo sin generar un error?
Estoy tratando de mejorar el código de esta respuesta para pedir confirmación antes de crear el directorio que falta, esto es lo que escribo: function! CreateDirectoryAskConfirmation(path) if !isdirectory(a:path) echohl Question echo "Create directory " . a:path . "?" echohl None let response = nr2char(getchar()) if response ==? "y" call mkdir(a:path, …
10 save  autocmd  error 


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.