Vim: inconsistência de espaço em branco cw & dw

1

vim parece tratar os espaços em branco de forma diferente ao usar cw (alterar palavra) e dw (excluir palavra).

Por exemplo, com o texto de exemplo abaixo, se o cursor estiver sobre a letra a e eu digitar dw , ele removerá o restante da palavra e o espaço depois, enquanto se Eu uso cw , ele não exclui o espaço em branco (e deixa você no modo de inserção como esperado).

Exemplo:

example text

Esse comportamento é confuso, pois eu achava que o movimento w (word) seria o mesmo, independentemente do verbo d (delete) ou c (change).

    
por rusty shackleford 25.05.2018 / 14:31

1 resposta

2

É assim e é assim que é documentado. Se você quiser que cw se comporte como dw , pode sempre dizer

:map cw dwi

Veja :help cw para detalhes. Veja também w em :help cpoptions .

Na seção de ajuda de cw :

Special case: When the cursor is in a word, "cw" and "cW" do not include the white space after a word, they only change up to the end of the word. This is because Vim interprets "cw" as change-word, and a word does not include the following white space.

If you prefer "cw" to include the space after a word, use this mapping:

:map cw dwi

Or use "caw" (see "aw").

    
por 25.05.2018 / 14:40

Tags