Para excluir todo o espaço em branco à direita (no final de cada linha), você pode usar o comando:
:%s/ \+$//
Para incluir guias, use em \s
vez do espaço.
Na linha de comando:
$ ex +'%s/\s\+$//e' -cwq file.c
Todos os arquivos no diretório atual (use recursivamente **/*.*
):
$ ex +'bufdo!%s/\s\+$//e' -cxa *.*
Maneira Python:
:py import vim
:pydo vim.current.buffer[linenr - 1] = vim.current.buffer[linenr - 1].strip()
ou:
:py import vim
:py for i, l in enumerate(vim.current.buffer): vim.current.buffer[i] = l.rstrip()
Use lstrip()
para a faixa esquerda (à direita), rstrip()
para a faixa direita (à esquerda) ou strip()
para remover de ambas as extremidades.
Aqui está uma função útil que remove o espaço em branco supérfluo do final de uma linha que você pode adicionar ao seu .vimrc
:
" Removes superfluous white space from the end of a line
function! RemoveWhiteSpace()
:%s/\s*$//g
:'^
"`.
endfunction
Há também o plugin DeleteTrailingWhitespace para isso.
Destacando espaços em branco
Para verificar se todos os espaços à direita se foram, use:
Digite / $
para encontrá-los. Se houver, o vim os destacará para você.
Use cores para destacá-las:
:highlight ws ctermbg=red guibg=red
:match ws /\s\+$/
Use caracteres visíveis ( origem ):
:set encoding=utf-8
:set listchars=trail:·
:set list
Veja também: Destacar espaços indesejados
Para destacar o espaço em branco à direita, por padrão, você pode configurar o seu da .vimrc
seguinte maneira:
highlight ws ctermbg=red guibg=red
match ws /\s\+$/
autocmd BufWinEnter * match ws / \+$/
Removendo espaços em branco por padrão
Se você deseja garantir que todos os espaços em branco à direita de um arquivo sejam removidos automaticamente ao salvar, você pode adicionar o seguinte comando ao seu .vimrc
:
autocmd BufWritePre *.c,*.php :%s/ \+$//ge
o que não é recomendado, pois removerá os espaços em branco finais de todos os arquivos que um usuário salvar (mesmo onde os espaços em branco possam ser desejados).
Veja também: