utf8이 아닌 환경에서 vim listchar를 작동시키는 방법은 무엇입니까?


8

내 .vimrc에는 다음이 포함됩니다.

if $LANG =~ '\(UTF\|utf\)-\?8' || $LC_CTYPE =~ '\(UTF\|utf\)-\?8'
  set list listchars=tab:»·,trail:~,extends:>,precedes:<
endif

그러나 유니 코드 인 일부 문자가 있습니다 .LC_CTYPE = zh_TW.Big5 환경에서 vim을 실행하면 표시됩니다.

Error detected while processing /home/user/.vimrc:
  line   70:
E474: Invalid argument: listchars=tab:»·,trail:~,extends:>,precedes:<

답변:


5

vimrc에 다음 줄을 추가하십시오.

scriptencoding utf-8

그것은 비 UTF 시스템에 있더라도 vim에게 파일을 UTF8로 읽도록 지시합니다. 그런 다음 모든 문자를 현재 인코딩으로 코드 변환합니다. listchars 옵션에 사용하는 문자가 존재하는 경우 사용하는 다른 인코딩이 있으면 주변 조건을 가질 필요조차 없습니다.


이 방법은 vim에서 작동하지만 gvim은 여전히 ​​해당 오류 메시지를 보여줍니다.
Daniel YC Lin

1
.gvimrc유니 코드 문자가 포함 된 파일이 있습니까? 그렇다면 해당 파일에 같은 줄을 추가하면 문제가 해결 될 것입니다. 이 명령은 파일이있는 파일에만 적용되므로 문자 인코딩이 중요한 vim 구성 파일에 포함되어야합니다.
qqx

내 gvimrc로 인한 문제를 찾아 수정했습니다.
다니엘 YC 린 1
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.