최근에 vimrc 꾸미는 것에 재미를 붙였습니다. cursorline과 cursorcolumn은 vim 편집기에서 현재 편집 중인 줄에 하이라이팅을 표시해 주는 옵션입니다. 이를 설정하여 현재 편집 중인 줄을 더 쉽게 확인할 수 있습니다.
.vimrc 생성하기
.vimrc 만드는 방법은 다음과 같습니다.
$ touch ~/.vimrc
cursorline, cursorcolumn 설정하기
다음의 명령어를 입력하면 .vimrc 파일이 열리게 됩니다.
$ vi ~/.vimrc
새로 만든 경우에는 아무 내용도 없을텐데, 아래와 같이 작성해 줍니다.
set cursorline
set cursorcolumn
다 작성을 하면 아래와 같이 ":" 콜론을 입력하고 w를 입력합니다. 이러면 방금 작성한 내용이 저장됩니다.
그리고 ":" 콜론을 입력하고 "source %"를 입력하면 vim에 적용이 됩니다.
:w
:source %
아래 그림은 위와 같이 설정했을 때 linux-2.6에서 md5.c 파일에서 보이는 화면입니다. 참고로 각자 사용하는 os에 따라서 default 설정은 다릅니다.
커서 라인 색깔 변경하기
그런데 이렇게 보면 대게 밋밋하고 잘 보이지 않습니다.
원하시는 색깔을 넣는 방법에 대해서 알아보도록 하겠습니다.
hi는 highlight의 약자입니다. 처음에 검색했을 때 아무도 안 알려줘서 이것도 검색하느라 시간이 좀 걸렸습니다.
hi CursorLine cterm=bold ctermbg=darkgray ctermfg=NONE
hi CursorColumn cterm=bold ctermbg=darkgray ctermfg=NONE
cterm에는 아래와 같은 속성을 가질 수 있습니다.
bold
underline
reverse
inverse
italic
standout
NONE
ctermbg는 cursor가 있는 행 또는 열에 대한 바탕을 의미합니다.
ctermfg는 cursor가 있는 글씨 색을 의미합니다.
아래 그림은 위와 같이 설정했을 때 linux-2.6에서 md5.c 파일에서 보여지는 화면입니다.
원하시는 색은 아래 사이트에서 확인하셔서 바꾸시면 됩니다.
*cterm-colors*
NR-16 NR-8 COLOR NAME
0 0 Black
1 4 DarkBlue
2 2 DarkGreen
3 6 DarkCyan
4 1 DarkRed
5 5 DarkMagenta
6 3 Brown, DarkYellow
7 7 LightGray, LightGrey, Gray, Grey
8 0* DarkGray, DarkGrey
9 4* Blue, LightBlue
10 2* Green, LightGreen
11 6* Cyan, LightCyan
12 1* Red, LightRed
13 5* Magenta, LightMagenta
14 3* Yellow, LightYellow
15 7* White
Vim documentation: syntax
vimdoc.sourceforge.net
혹시나 반영이 안 되신다면
저는 위와 같이 설정을 했는데 처음에는 반영이 되지 않아서 골치가 아팠습니다. 분명히 검색한 대로 했는데 왜 반영이 안 될까 싶었습니다. 처음에는 :를 넣어서 "hi CursorLine ~"을 입력했는데 반영이 되고, 직접 입력하면 반영이 되지 않아서, 정말 곤욕스러웠죠. 이유는 바로 이것이었습니다.
바로 highlist 설정을 하고 난 다음에, colorscheme을 했기 때문입니다.
이 순서를 바꿔주면 바로 해결됩니다.
설정이 반영 안 되는 경우
set cursorline
set cursorcolumn
hi CursorLine cterm=NONE ctermbg=darkgray ctermfg=NONE
hi CursorColumn cterm=NONE ctermbg=darkgray ctermfg=NONE
colorscheme jellybeans
설정이 반영된 경우
set cursorline
set cursorcolumn
colorscheme jellybeans
hi CursorLine cterm=NONE ctermbg=darkgray ctermfg=NONE
hi CursorColumn cterm=NONE ctermbg=darkgray ctermfg=NONE
마무리
내가 수정하고 있는 곳이 강조되면 코드를 수정할 때 큰 도움이 됩니다. 간혹 내 커서가 어디에 있는지 확인이 안 되고, 잘못 입력했는데 놓치는 경우도 있기 때문입니다. 커서 라인 강조하기를 통해서 여러분도 즐거운 개발하시길 바랍니다.
'개발 > Linux' 카테고리의 다른 글
[Linux] pwd 명령어 (0) | 2024.09.07 |
---|---|
[Linux] which 명령어 (0) | 2024.09.06 |
[Linux] man 명령어 (0) | 2024.09.06 |
[Linux] ls 명령어 (0) | 2024.07.20 |
[vim] 줄(line) 번호 설정하기 (0) | 2023.08.22 |