Vim에서 80 열 표시를하는 방식이 올바르지 않은 것 같습니다 set columns=80
. 때때로 나는 또한 대안으로 set textwidth
라인 오버플로를보고 기대할 수 있기를 원합니다 set columns
.
이것은 일부가 불행한 부작용 :
set number
줄 번호가 다른 파일 사이를 분할하는 것을 두려워 할 수 없습니다 . 즉, <100 개의 줄 파일과> = 100 개의 줄 파일은set columns
추가 숫자 표시에 사용되는 추가 열 때문에 두 개의 다른 값 이 필요 합니다.- 또한 창을 세로로 나누지 않고 새로운 (g) Vim 세션을 시작합니다. 이것은 창을 열거 나 닫을 때마다
vsplit
강제로 실행set columns
되므로 새 세션을 시작하는 것이 번거 로움 이 없기 때문 입니다.
set numbers
, 수직 분할 등 을 원할 때 80 자 표시를 어떻게 처리 합니까?
답변
내 .vimrc 에이 설정이 있습니다.
highlight OverLength ctermbg=red ctermfg=white guibg=#592929
match OverLength /\%81v.\+/
이것은 80 열 제한을 초과하는 텍스트에 대해 미묘한 빨간색으로 배경을 강조 표시합니다 (GUI 모드에서는 미묘하지만 터미널 모드에서는 덜 중요합니다).
답변
vim 7.3부터 set colorcolumn=80
( set cc=80
짧게) 사용할 수 있습니다 .
이전 버전에서는이를 지원하지 않으므로 .vimrc
대신 다음을 사용합니다.
if exists('+colorcolumn')
set colorcolumn=80
else
au BufWinEnter * let w:m2=matchadd('ErrorMsg', '\%>80v.\+', -1)
endif
옵션 에 대한 온라인 설명서colorcolumn
도 참조하십시오 .
답변
더 짧은 방법 :
match ErrorMsg '\%>80v.\+'
답변
나는 선호한다:
highlight ColorColumn ctermbg=gray
set colorcolumn=80
답변
사이먼 하워드의 대답은 훌륭합니다. 그러나 /\%81v.\+/
열 81을 초과하는 탭을 강조 표시하지 못합니다. 그래서 VIM 위키 에서 찾은 내용 과 HS의 색상 선택에 따라 약간의 조정을했습니다 .
highlight OverLength ctermbg=darkred ctermfg=white guibg=#FFD9D9
match OverLength /\%>80v.\+/
이제 VIM은 열 80을 초과하는 모든 항목을 강조 표시합니다.
답변
최소한의 최고의 접근 방식. 너무 긴 줄의 79 번째 문자 만 강조 표시됩니다. 몇 가지 일반적인 문제를 극복합니다. 새 창에서 작동하고 넘친 단어가 올바르게 강조 표시됩니다.
augroup collumnLimit
autocmd!
autocmd BufEnter,WinEnter,FileType scala,java
\ highlight CollumnLimit ctermbg=DarkGrey guibg=DarkGrey
let collumnLimit = 79 " feel free to customize
let pattern =
\ '\%<' . (collumnLimit+1) . 'v.\%>' . collumnLimit . 'v'
autocmd BufEnter,WinEnter,FileType scala,java
\ let w:m1=matchadd('CollumnLimit', pattern, -1)
augroup END
참고 : FileType scala,java
이것은 Scala 및 Java 소스 파일로 제한됩니다. 아마도 이것을 사용자 정의하고 싶을 것입니다. 생략하면 모든 파일 형식에서 작동합니다.
답변
또한 80 개의 한계를보기 위해 선을 그릴 수 있습니다.
let &colorcolumn=join(range(81,999),",")
let &colorcolumn="80,".join(range(400,999),",")
결과: