Coisas que eu tentei

Coisas que eu tentei

Quando abro o Vim no meu laptop e executo o regex assim:

:%s/foo/\n/g

vim insere ^@ em vez de quebras de linha.

Esse problema começou a acontecer na semana passada. Estou executando o Ubuntu 18.04.04. Acho que o problema pode ter começado depois que o Ubuntu instalou as atualizações.

Coisas que eu tentei

codificação e codificação de arquivos

Tentei definir a codificação e a codificação do arquivo para utf-8 e depois para latin1, mas isso não fez diferença.

:lang

:lang produz "Idioma atual: "LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=es_ES.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=es_ES.UTF-8;LC_MESSAGES=en_US.UTF- 8;LC_PAPER=es_ES.UTF-8;LC_NAME=es_ES.UTF-8;LC_ADDRESS=es_ES.UTF-8;LC_TELEPHONE=es_ES.UTF-8;LC_MEASUREMENT=es_ES.UTF-8;LC_IDENTIFICATION=es_ES.UTF-8 "

Se eu ligar para o vim com

LC_ALL=C vim foo

então não faz diferença, o problema ainda ocorre.

Responder1

\n no vim para substituição não significa nova linha, mas nulo.

Use\r em vez disso. Por exemplo

:%s/foo/\r/g

informação relacionada