VIM: Qual é a maneira mais rápida de retornar da digitação: o usuário no modo de inserção?

0

Às vezes, esqueci de pressionar ESC para retornar ao modo de comando e inserir :w<enter> em alguma linha que eu estava editando. Então eu recebo o seguinte:

some line of code:w
    I was typing
   ^ cursor position

Então, o que eu faço é pressionar ESC + k + A + Backspace + Backspace + ESC + j ou algo similar.

Alguém tem uma maneira mais curta / melhor / mais rápida de fazer isso?

    
por Nelson Teixeira 30.07.2015 / 16:09

3 respostas

2

Se o :w<enter> extra for a única inserção nesse local, eu uso ESC + u (undo).

Se não for apenas o seu, mas dependendo das preferências / hábitos pessoais, poderá ser mais rápido: ESC + seta para cima + < kbd> J (junção) + seta para esquerda + seta para esquerda + x + x (apagar char atual).

Tecnicamente, a sequência mais longa pode ser salva como uma macro e depois chamada com apenas ESC + @ + tecla (onde key corresponde ao registrador no qual a macro foi salva) - mas eu simplesmente não consegui colocar as macros em meus hábitos:)

    
por 30.07.2015 / 17:11
2

C - o u

C - o : estado normal para um comando

u : desfazer

Observação: isso pode desfazer mais do que você deseja, dependendo de quanto você mudou.

    
por 30.07.2015 / 16:18
1

Com set backspace=2 , você deve apenas pressionar Backspace três vezes.

Isso é o mesmo que set backspace=indent,eol,start , eol sendo o mais importante, ele permite que você retroceda em novas linhas.

Veja Vim | opções | backspace ou :help 'backspace' (observe as aspas simples) para mais detalhes

    
por 30.07.2015 / 16:13

Tags