': set list'에서 "EOL"대신 CR 및 LF 표시


12

하나의 문자를 EOL 문자로 표시하는 대신 파일이 유닉스인지 또는 dos인지에 관계없이 CR과 LF 모두에 대해 별도로 표시하고 싶습니다. 이것이 가능한가?


2
그래서 내가 제대로 이해 당신이 뭔가를하려는 경우 Hello%$(여기서 DOS 파일을 %CR을이고 $A는 LF)? 이것은 list/ listchars설정 으로는 불가능하며, VimScript에서도 이것을 할 수있는 방법을 생각 해낼 수 없습니다.
Martin Tournoij

1
@Carpetsmoker 맞습니다. 이외에도 특정 캐릭터로 set list가지고 CR있고 LF보여주는 방법이 있습니까?
Captain Man

2
특정 색상을 강조 표시 할 수는 있지만 해키가 아닌 특정 문자로 표시하는 방법은 없습니다.
EvergreenTree

CR이나 LF를 한 번에 볼 수 있다고 생각합니다.
SibiCoder 2016 년

1
set stl+=\ [%{&ff=='mac'?'CR':&ff=='unix'?'LF':'CRLF'}]
Antony

답변:


2

몇 가지주의 사항이 있으면 Vim의 이진 모드를 사용 하여이 작업을 수행 할 수 있습니다. 명령을 사용하고 싶을 것 같습니다.

vim -b +'set list' somefile

또는 다음에 넣을 수 있습니다 .vimrc.

:set binary
:set list

중요한 것은 문제의 파일을 버퍼로 읽기 전에 이진 모드를 설정해야한다는 것입니다 . Vim이 파일을 읽은 후에는 너무 늦습니다. 이 속임수는 Vim이 파일을 읽는 방법을 변경하는 데 달려 있습니다. 구체적으로 Vim 이 파일의 특정 유형을 추측 하지 않으려 고합니다 <EOL>.

이진 모드는 원하는 것을 수행하여 자동 줄 구분 기호 감지를 비활성화하지만 다른 몇 가지 사항도 수행합니다.

  • 'textwidth'0으로 설정
  • 'wrapmargin'0으로 설정
  • 설정 해제 'modeline'
  • 설정 해제 'expandtab'

따라서 당신은 이것을 이것을 원하지 않을 것입니다 .vimrc; 명령 행 버전을 사용하는 것이 좋으며이 특별한 종류의 표시가 필요한 파일에만 사용하십시오.

자세한 내용은:

  • :help 'binary'
  • :help edit-binary
  • :help file-read
  • :help file-formats
  • :help 'fileformat'

but it does quite a few other things as well바이너리는 FileType자동 명령이 포함되어 있거나 불가피하게 내장 된 것입니까?
Captain Man

그 말로, 나는 바로 뒤에 오는 목록을 소개하려고했습니다.
Ptolemarch

맞아, 나는 단지 모든 것을 인용하지 않았다 :) 내가 의미하는 것은 자동 명령으로 FileType호출 binary된 것을 사용하거나 내장 된 것이기 때문에 그 일을합니까?
Captain Man

1
아 맞아 이 중 어느 것도 파일 형식과 관련이 없습니다 (그러나 파일 형식에서는 상당히 잡 힙니다). 이것은 바이너리 모드 자체의 일부입니다. 참조하십시오 :help 'binary'. 그리고 아마도 :help 'fileformat'.
Ptolemarch

0

에 추가하면 ~/.vimrc:

set ffs=unix
set list

즉 항상 표시됩니다 CR^MLF같은 $.

기본적으로 vim은 CRLF끝이있는 파일을 dos 파일로 해석 하고로 표시 CRLF합니다 $. 을 설정 ffs=unix하면 vim이 항상 유닉스 파일로 열리므로 CR이 추가 문자로 취급됩니다.

참고 : dos 파일을 수정하고 저장하는 경우주의하십시오. 를 누르면을 ENTER삽입합니다 LF. CR을 입력하여 수동으로 삽입해야합니다 CTRL+V, CTRL+M.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.