
Eu li isto sobre a opção shiftwidth no Google: Para alterar o número de caracteres de espaço inseridos para recuo, use a opção ‘shiftwidth’.
Ok, ok, mas o que é isso mais exatamente? Como posso tentar isso para ver o que realmente acontece? Criei um novo arquivo C e adicionei uma configuração IF, mas nada acontece durante a identificação:
if (a > 0) { nada acontece aqui }
Obrigado!
Responder1
Digamos que você definiu shiftwidth=2
Em primeiro lugar, você precisa ter certeza de que o arquivo tem extensão .c. Seja usando
$ vim foo.c
para um novo arquivo ou salvando o arquivo com uma extensão .c.
Agora digite
if (a > 0) {
e pressione Enter. A próxima linha será recuada automaticamente.
if (a > 0) {
foo();
quando você coloca um '}' correspondente, o vim irá recuá-lo corretamente.
if (a > 0) {
foo();
}
Leia issodocumentaçãopara mais clareza.
Responder2
eu posso recomendareste screencastporDrew Neilque explicará como tabstop, softtabstop, shiftwidth e expandtab funcionam juntos.
Responder3
Outro uso importante de shiftwidth é fornecer recuo adequado ao código. Suponhamos que estejamos usando um arquivo.yaml no qual desejamos recuar algumas linhas de código.
definimos a largura do deslocamento com
esc: definir largura de deslocamento = 2
Agora selecione o que você deseja recuar com a chave
mudança + v
Agora, para recuar o código corretamente, usamos
mudança + >
E, para recuar o código à esquerda, usamos
mudança + <