2012-09-26 9 views
6

hago esto todo el tiempo:cambiante "archivo modificado" bandera de línea de estado de vim para ser más notable

editar un archivo, volver a la terminal y ejecutar el script que estoy escribiendo ... sólo para darse cuenta de que yo aún no lo he escrito en el disco.

¿Cómo hago para que vim básicamente me grite cuando el archivo no está escrito? Ese pequeño [+] no es lo suficientemente bueno. Idealmente, me gustaría aumentar el número de puntos rojos que se muestran, o algo más drástico.

PARA INSTANCE, estoy usando powerline (puramente en un intento de obtener un notificador 'el archivo ha sido modificado' más notable). Creo que sería genial si el color principal en la parte inferior de la barra cambiara siempre que el archivo no se haya guardado.

¿Alguna idea?

Respuesta

2

He escrito el StatusLineHighlight plugin para eso. Cambia el color de la línea de estado a rojo (personalizable) para los búferes modificados.

Sin embargo, no funcionará junto con Powerline u otras modificaciones de líneas de estado.

2

No es la respuesta a la pregunta que hizo, pero ¿por qué no acaba de hacer

set autowrite 

a hacer que el problema que usted ha mencionado (“volver a la terminal y ejecutar el script que estoy escribiendo ... solo para darme cuenta de que todavía no lo he escrito en el disco ") desaparece: esta opción hace que vim guarde los cambios que hizo cuando lo suspendió (nota: no cuando usa :shell para generar un nuevo shell).

Para powerline la única cosa que puede hacer fácilmente es editar colorscheme hacer resaltado más notable: copiar autoload/Powerline/Colorschemes/default.vim a ~/.vim/autoload/Powerline/Colorschemes/my.vim, encontrar Pl#Hi#Segments(['fileinfo.flags' y en cada línea de añadir el segundo color (fondo uno): transformar ['brightestred', ['bold']] a ['white', 'brightestred', ['bold']] etc. . A continuación, añadir

let g:Powerline_colorscheme='my' 

a la vimrc y ejecutar :PowerlineClearCache.

+0

Ah, pero me gusta que todo sea explícito, por lo que la escritura automática está desactivada. Probé tus sugerencias, la más completa y la más importante, pero no marcó una gran diferencia. Es muy molesto ver que no parece haber una forma directa de modificar el segmento, o más bien, que no puedo entender cómo funciona Powerline. Muchas gracias por su respuesta. – phillmv

+0

@phillmv Este segmento se define en 'autoload/Powerline/Segments.vim', puede aumentar el número de'% M' allí. Pero luego necesitas usar git y que se preocupe por tus cambios, no es algo que puedas copiar en '~/.vim' y esperar que Powerline funcione después de la próxima actualización (a menos que también copies el tema predeterminado). También puede entrar en conflicto con un número máximo de elementos de línea de estado (hasta 80, pero la línea eléctrica usa muchos de ellos. AFAIR Escuché que el tema predeterminado usa los 80 elementos si están instalados todos los complementos necesarios, no estoy seguro de si es verdadero: en mi sistema solo hay 29 de ellos). – ZyX

+0

Con el esquema de colores modificado, agregar un montón de espacios en ese tipo de segmento hizo el trabajo, así que cambié de nuevo a la línea eléctrica. ESTA ES LA CLASE DE LO QUE QUISE, gracias! De alguna manera se equivoca con mis otros segmentos si la ventana tiene un tamaño reducido, pero realmente no necesito saber el tipo de archivo y la codificación en todo momento. Powerline es todo tipo de vimscript vudú; Ni siquiera puedo imaginar cómo reordenar los segmentos. – phillmv

Cuestiones relacionadas