Respostas:
Você pode usar <CTRL-V><Tab>no "modo de inserção". No modo de inserção, <CTRL-V>insere uma cópia literal do seu próximo caractere.
Se você precisar fazer isso com frequência, o @ Dee`Kej sugeriu (nos comentários) a configuração Shift+ Tabpara inserir uma guia real com este mapeamento:
:inoremap <S-Tab> <C-V><Tab>
Além disso, conforme observado por @feedbackloop, no Windows, talvez seja necessário pressionar em <CTRL-Q>vez de <CTRL-V>.
CTRL+ Q- consulte stackoverflow.com/questions/6951672/…
inoremap <S-Tab> <C-V><Tab>- Você pode colocá-lo em seu ~/.vimrcarquivo.
Você pode desativar a opção expandtab no Vim como abaixo:
:set expandtab!
ou
:set noet
PS: E restaure-o quando terminar de inserir a guia, com "set expandtab" ou "set et"
PS: Se você tiver um conjunto de guias equivalente a 4 espaços em .vimrc (softtabstop), convém também defini-lo como 8 espaços para poder inserir uma guia pressionando a tecla Tab uma vez em vez de duas vezes (configure softtabstop = 8 )
set ete set noetpara mudar tabe spaceconforme a necessidade.
A partir da documentação em expandtab:
Para inserir uma guia real quando
expandtabestiver ativada, use . Veja também e ins-expandtab . Esta opção é redefinida quando a opção é definida e restaurada quando a opção é redefinida.CTRL-V<Tab>:retabpastepaste
Portanto, se você tiver um mapeamento para alternar a pasteopção, por exemplo,
set pastetoggle=<F2>
você também poderia fazer <F2>Tab<F2>.
.para repetir o último comando se desejar inserir várias guias.