Quando estou no modo de inserção e tenho a expandtab
opção ativada, pressionar Tab ↹resulta na inserção do número de espaços configurado.
Mas, ocasionalmente, quero inserir um caractere de tabulação real.
Você sabe como fazer isso?
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>
.
.
para repetir o último comando se desejar inserir várias guias.CTRL
+Q
- consulte stackoverflow.com/questions/6951672/…inoremap <S-Tab> <C-V><Tab>
- Você pode colocá-lo em seu~/.vimrc
arquivo.Você pode desativar a opção expandtab no Vim como abaixo:
ou
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 )
fonte
set et
eset noet
para mudartab
espace
conforme a necessidade.A partir da documentação em
expandtab
:Portanto, se você tiver um mapeamento para alternar a
paste
opção, por exemplo,você também poderia fazer
<F2>Tab<F2>
.fonte