Mostrar la pestaña listchars como espacios

14

Uso listy listcharspara mostrar mi espacio en blanco, pero el estilo de código al que me adhiero usa pestañas. Ver >o ^Ipara todas mis pestañas es nauseabundo.

¿Cómo mantendría todos los caracteres de mi lista existente pero con un carácter de tabulación en blanco?

Qix - MONICA FUE MALTRATADA
fuente
2
Tenga en cuenta que establecer un espacio como una pestaña significa que no podrá distinguir entre espacios y pestañas, o ver pestañas en otros lugares (como dentro de una cadena, al final de la línea). De set listalguna manera derrota el propósito de ;-) Algún otro personaje (más pequeño) que puedes probar: ·(PUNTO MEDIO), (CAJA ABIERTA) o (MENOS DE SUSCRIPCIÓN). (Yo personalmente uso set listchars=tab:!·).
Martin Tournoij
@Carpetsmoker correcto. Por eso tengo una pelusa. :) El signo de exclamación podría no ser tan malo, supongo que podría jugar con ellos.
Qix - MONICA FUE MAL
1
Como nota digna, en realidad terminé usando una pequeña flecha para mis pestañas. No tan intrusivo.
Qix - MONICA FUE MALTRATADA el

Respuestas:

23

'listchars'toma dos caracteres para tabque pueda simplemente usar dos espacios regulares:

set listchars=tab:\ \ ,trail:·,eol:¬,nbsp:_
romainl
fuente
1
No sabía que podía hacerlo \ , aunque tiene sentido ya que puede buscar con ellos ( /\ ). Estaba intentando \s, ' 'etc.
Qix - MONICA FUE MAL
3

Resulta que los espacios que no se rompen funcionan bien.

Según esta respuesta , la secuencia utf-8 es "\xc2\xa0".

Como estoy en una Mac, simplemente lo hice echo -en "\xc2\xa0" | pbcopyy luego los agregué a mi .vimrc :

set listchars=tab:[2p],...

donde [2p]pegó el portapapeles dos veces. El resultado terminó siendo

set listchars=tab:<nbsp><nbsp>,...

que hizo que las pestañas se mostraran correctamente como espacios en blanco simples.

Qix - MONICA FUE MALTRATADA
fuente
2
Eso es un montón de problemas cuando podrías hacerlo set listchars=tab:\ \ ,....
romainl
1
@romainl luego responde :)
Qix - MONICA FUE MALTRATADA el