vim의 캐리지 리턴 및 줄 바꿈 문자

vim의 캐리지 리턴 및 줄 바꿈 문자

vim에서 파일을 열 때 현재 줄의 끝에 두 개의 빈 줄을 추가하고 싶습니다. 저는 다음 스위치를 사용했습니다.

%s/$/\n\n/

분명히 이것은 작동하지 않지만 작동하는 것은 다음과 같습니다.

%s/$/\r\r/

\r이 Windows 기능인줄 알았는데? 누구든지 더 자세히 설명할 수 있나요?

답변1

~에서모드에 대한 Vim 문서:

\r은 <CR>과 일치합니다.

\n은 줄 끝과 일치합니다. 버퍼 텍스트가 아닌 문자열 내에서 일치하는 경우 리터럴 개행 문자와 일치합니다.

원천:https://stackoverflow.com/questions/71417/why-is-ra-newline-for-vim

답변2

@MartinvonWittich가 말했듯이 \r키보드 조합을 사용할 수도 있습니다.

Ctrl+ v+ M일반적으로 ^M입력하는 동안 표시됩니다.

%s/$/^M^M/

vim다음은 검색 및 바꾸기에 대한 유용한 추가 정보 입니다 .

검색할 때:

  • ., *, \, [, ], ^$는 메타문자입니다.
  • +, ?, |, {, }, ()특수 기능을 사용하려면 이스케이프해야 합니다.
  • \/is /(슬래시를 검색하려면 백슬래시 + 슬래시를 사용하세요.)
  • \t탭 문자입니다. \s공백입니다.
  • \n개행 문자, \rCR(캐리지 리턴 = Ctrl-M = ^M)입니다.
  • \{#\}반복을 위해. /foo.\{2\}foo 및 다음 두 문자와 일치합니다. \} 마지막에는 필요하지 않으므로 /foo.\{2}동일한 작업을 수행합니다.
  • \(foo\)foo에 대한 역참조를 만듭니다. 이스케이프 처리되지 않은 대괄호는 문자 그대로 일치합니다. 여기서는 \문을 닫아야 합니다 \.)

교체 시:

  • \r개행 문자이며 \n널 바이트(0x00)입니다.
  • \&앰퍼샌드입니다(&는 검색 패턴과 일치하는 텍스트입니다).
  • \1첫 번째 역참조의 텍스트를 삽입합니다. \2두 번째 역참조가 삽입되는 식입니다.

인용하다

관련 정보