utf8이 아닌 환경에서 vim listchar를 작동시키는 방법은 무엇입니까? list listchars=tab:»·,trail:~,extends:>,precedes:< endif 그러나

내 .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:<


답변

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

scriptencoding utf-8

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