2011-02-14 13 views
37

¿Hay alguna manera fácil de mostrar caracteres en espacios en blanco como espacio y tabulación en gvim? Algo así como lo que se implementa en Gedit, Geany, Komodo y otros editores de GUI donde (cuando la opción está activada) los espacios se muestran como un 'apagado' atenuado o gris. y pestañas como '->'.Mostrar caracteres en espacios en blanco en gvim

+0

Todas las buenas respuestas ... pero no lo hago quiero iluminar los espacios, he visto temas con eso y honestamente todos se ven bastante feos (para mí). Voy a hacer un poco más de experimentación con las opciones list/listchars y ver si no puedo encontrar algo un poco más cercano a lo que tengo en mente. – memilanuk

+0

Igual que [Haga que Vim muestre TODOS los espacios en blanco como un carácter] (http://stackoverflow.com/q/1675688). Puede usar el parche recientemente actualizado para Vim en [ este correo lista de temas] (https://groups.google.com/d/msg/vim_dev/dIQHjW1g92s/FPUU_-9N3wYJ). – glts

Respuesta

37

Comprueba listchars y list opciones en Vim. Un ejemplo de uso de esta característica:

" part of ~/.vimrc 
" highlight tabs and trailing spaces 
set listchars=tab:>-,trail:- 
set list 
+1

Hasta ahora estoy usando el bit 'set listchars ...' de su publicación y el comando noremap de la publicación de UncleZ ... parecen funcionar bien juntos. ¿Hay alguna manera de hacer que los espacios se vean como '--->' en lugar de '> -' con el final '-'? Intenté simplemente sustituir las dos cadenas, pero no funcionó muy bien:/ – memilanuk

+0

Desafortunadamente, no creo que sea posible en Vim. –

+0

@memilanuk: Siempre me confundió que sea '> -------'. Si encontró una solución, por favor publíquela. –

29

Se puede utilizar cualquier carácter si se habilita Unicode primera

set encoding=utf-8 

Una línea que utilizo (puso en ~/.vimrc):

set list listchars=tab:→\ ,trail:· 

Obtenga más información acerca de esta configuración en http://vim.wikia.com/wiki/Highlight_unwanted_spaces

El color de estos caracteres está controlado por su combinación de colores.

6

Aquí están algunos de mis ajustes pertenecientes al espacio en blanco.

Uso F11 para alternar entre la visualización de caracteres de espacio en blanco o no:

noremap <F11> :set list!<CR> 

cómo mostrar caracteres de espacio en blanco cuando list se establece:

set listchars=eol:$,tab:>-,trail:.,extends:>,precedes:<,nbsp:_ 

resaltar los caracteres especiales en amarillo:

highlight SpecialKey term=standout ctermbg=yellow guibg=yellow 

Resaltar espacios redundantes (espacios al final de la línea, espacios antes o después de pestañas):

highlight RedundantSpaces term=standout ctermbg=Grey guibg=#ffddcc  
call matchadd('RedundantSpaces', '\(\s\+$\| \+\ze\t\|\t\zs \+\)\(\%#\)\@!') 

Hope this help!

+0

Al agregar el último bit, obtengo: E28: No se mencionan los nombres del grupo resaltado: RedundantSpaces –

+0

¿Uhm intente intercambiarlos? Supongo que lo más destacado debería venir antes de matchadd ... – UncleZeiv

+0

Hola @UncleZeiv Por favor, edite su respuesta para poder intercambiar las dos últimas líneas ('highlight' before' matchadd') como sugirió en su último comentario. Saludos – olibre

0

Esto funciona bien para mí:

"detrás de detección de espacio en blanco destacado WhitespaceEOL ctermbg = guibg amarillo = amarillo partido WhitespaceEOL/\ s + $/

Cuestiones relacionadas