Como habilitar nano-como espaço em branco destacando no vim?

4

nano tem um realce de sintaxe útil que realça os espaços em branco (guias e espaços), sob duas condições: (1) o espaço em branco não possui um caractere que não seja espaço entre o último caractere ou o início do line e, e (2) que o arquivo é código-fonte e não simples, texto simples (como em uma lista de compras). Como posso emular esse tipo de comportamento em vim ?

    
por fouric 23.01.2013 / 07:23

1 resposta

4

Eu uso set list e set listchars em .vimrc para mostrar tabs e% white spaces , você pode usar uma condição para tipo de arquivo seletivo como este.

if !(&filetype == "txt")
  set list                " show special characters
  set listchars=tab:→\ ,trail:·,nbsp:·
endif

Então, meus arquivos ficam assim quando esses charaters estão presentes.

function someFunc() { // no trailing spaces here
→   var a = "hola"; // 3 trailing spaces.···
    alert(a); // this line starts with spaces instead of tab
// next a line with 4 white spaces and nothing else
····
// next a line with a couple tabs
→   →   
}

Nota: · não é .

Editar

Então, para responder ao seu comentário, você pode fazer isso adicionando isso ao seu ~/.vimrc , certifique-se de adicioná-lo após o esquema de cores, ou será hi clear 'd.

if !(&filetype == "txt")
  highlight WhiteSpaces ctermbg=green guibg=#55aa55
  match WhiteSpaces /\s\+$/
endif

Você pode alterar as cores de realce e refinar a expressão regular conforme necessário. /\s\+$/ corresponderá a espaços à direita ou tabulações e linhas que contenham nada além desses dois caracteres. Se você quiser apenas destacar linhas com apenas guias e espaços, use /^\s\+$/ .

    
por 23.01.2013 / 07:44

Tags