Manter a posição do cursor na janela ao digitar (usando vim no Windows e / ou Linux)

2

Ao digitar texto, não gosto da maneira como o cursor desce lentamente em direção à parte inferior da tela. Em vez disso, preferiria se o cursor permanecesse no mesmo lugar e o texto acima do cursor subisse. Eu sei sobre a opção 'scrolloff', mas eu não gosto disso, pois isso atrapalha os comandos H, L e M, e o comando 'zz' é muito trabalhoso.

Alguém sabe como conseguir esse comportamento no vim?

    
por iorrus 21.11.2011 / 18:40

2 respostas

1

Você pode definir a opção 'scrolloff' como um número alto para manter o cursor no meio da exibição:

:set scrolloff=9999

Para fazer isso apenas no modo de inserção, você precisará usar autocmd :

:autocmd InsertEnter * :set scrolloff=9999
:autocmd InsertLeave * :set scrolloff=0

Se você tiver a quebra de linha desativada, poderá fazer o mesmo com a opção 'sidescrolloff' .

Coloque o (s) comando (s) no seu ~ / .vimrc (~ / _vimrc para Windows) para torná-los permanentes.

Veja:

:help 'scrolloff'
:help 'sidescrolloff'
:help autocmd.txt
    
por 21.11.2011 / 19:40
1

Como uma maneira barata e cafona de fazer isso, você pode usar

:imap <CR> <ESC>zzo

para executar zz toda vez que você pressionar Enter no modo Inserir.

    
por 21.11.2011 / 18:57

Tags