Como posso alterar o tamanho do recuo?

20

Acabei de descobrir que poderia recuar e recuar facilmente no Vi com: <<e>>

Por padrão, ele adiciona um tabcaractere. Agora estou me perguntando, isso poderia ser para um número de espaços através de uma configuração no meu .vimrc? E como devo fazer isso?

J. Chomel
fonte

Respostas:

23

Várias configurações controlam o comportamento:

Primeiro set expandtabpermite substituir as guias por caracteres de espaços em branco :h 'expandtab'.

Em seguida, set shiftwidth=4faz as tabulações serem 4 espaços em branco :h 'shiftwidth'.

Você também pode estar interessado em :h 'tabstop'definir o número de espaços que um caractere de tabulação no arquivo conta.

Como um bônus, veja :h 'smartindent'e :h 'autoindent'quais são bastante úteis.

statox
fonte
7

Respondi minha necessidade, modificando .vimrccomo abaixo:

:set shiftwidth=2
:set autoindent
:set smartindent
~

Obrigado Sibi & satox

J. Chomel
fonte
Também: set tabstop = 2
Straff
4

Sim.

Você pode definir shiftwidthpara qualquer número de espaços. Isso funciona em vie vim.

:set shiftwidth=2

Agora, a largura mudou para cada um >>e <<será 2.

SibiCoder
fonte
1
touch ~/.vimrc
echo "set ts=4 sw=4" >> ~/.vimrc

Atalho para a resposta de J.Chomel.
touchcriará o arquivo .vimrc no diretório inicial, se ainda não existir.
Em seguida, acrescente tabstop e shiftwidth com suas preferências ao arquivo .vimrc .

aerijman
fonte
Observe que é uma prática recomendada usar o nome longo das opções no vimrc (ie tabstope shiftwidth), geralmente é mais legível e, como você não precisa digitá-las, muitas vezes no arquivo de configuração, não há muito ganho em usar nomes abreviados. .
statox