Como recuar como espaços em vez de tabulação?


21

Estou codificando alguns modelos html em arquivos JADE. Quero recuar automaticamente o código com espaços em vez de tabulação. Eu tentei shiftwidth=2, tabstop=2mas não importa o que aconteça, ainda é recuar usando guias em vez de barra de espaço, o que faz com que a compilação JADE gere erros.

Como posso recuar automaticamente grandes seções de código usando espaços em vez de guias?

Respostas:


25

Você está procurando a expandtabopção. Quando esta opção é definida, os espaços são sempre usados. Você pode colocar set expandtabno seu vimrc para sempre ter essa opção definida quando o vim for iniciado. Se você deseja ativar esta opção apenas para idiomas específicos, consulte esta pergunta . Para obter ajuda sobre esta opção, consulte :help 'expandtab'.


1
graças :set expandtabme permitiu usar espaços em vez de guias para recuo
— John

É verdade que tsé inútil quando etestá definido?
— iBug 8/08

@iBug Não se você estiver criando o arquivo sozinho, mas pode ser útil defini-lo se estiver editando arquivos existentes com guias. Veja vim.fandom.com/wiki/Indenting_source_code para obter mais informações sobre recuo, achei muito mais claro que os arquivos de ajuda do vim.
— EvergreenTree

22

Você deseja expandtab.

Mas geralmente existem algumas opções que você deseja definir ao mesmo tempo.

Se você adicionar o seguinte ao seu arquivo ~ / .vimrc

" tabstop:          Width of tab character
" softtabstop:      Fine tunes the amount of white space to be added
" shiftwidth        Determines the amount of whitespace to add in normal mode
" expandtab:        When on uses space instead of tabs
set tabstop     =4
set softtabstop =4
set shiftwidth  =4
set expandtab

Como alternativa, você pode executá-las manualmente a partir do modo normal, prosseguindo com ':'

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.