
노트북에서 Vim을 열고 다음과 같이 정규식을 실행하면:
:%s/foo/\n/g
vim은 줄 바꿈 대신 ^@를 삽입합니다.
이 문제는 지난주부터 발생하기 시작했습니다. 우분투 18.04.04를 실행 중입니다. Ubuntu가 업데이트를 설치한 후에 문제가 시작된 것 같습니다.
내가 시도한 것들
인코딩과 파일인코딩
인코딩과 파일 인코딩을 utf-8로 설정한 다음 latin1로 설정해 보았지만 아무런 차이가 없었습니다.
:lang
:lang은 "현재 언어: "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 "
vim을 호출하면
LC_ALL=C vim foo
그러면 아무런 차이가 없지만 문제는 계속 발생합니다.
답변1
교체를 위한 vim의 \n은 개행 문자가 아니라 null을 의미합니다.
대신 \r을 사용하세요. 예:
:%s/foo/\r/g