vim - temporary highlighting

Computing/vim tips 2009. 7. 29. 20:27

아주 큰 로그 파일 등을 꼼꼼히 분석하거나 할 때 가끔 이런 생각을 했었다 :
'이 단어만 잠시 하일라이트 시켜 두면 훨씬 보기 편할텐데'

예를 들어, 다음 그림과 같은 로그파일이 있다고 가정하자 :


그냥 이걸 편집기로 열어서 보면 위 그림에서 보다시피 너무 난삽해서 어디서부터 어디까지가 하나인지 구분하기 너무 힘들다.
이럴 때, 각 시작부분을 다음처럼 하일라이트 해 둘 수 있다면 한결 읽기가 수월해질 것이다 :


그런데 이것을 하느라 color scheme 지정해 주고, match 실행시켜주고 하기는 왠지 번거롭고 귀찮다.

그래서 스크립트를 하나 만들어 보았다 :


스크립트에서 해 둔 키 매핑을 기준으로 사용법을 설명하겠다.

shift-F10 을 누르면 아래에 위쪽 그림에서 보듯이 Keyword to highlight: 라는 프롬프트가 뜨고 현재 커서가 위치해 있는 부분의 단어가 출력된다. 이 상태에서 엔터를 눌러 주면 해당 단어가 위 그림에서 보듯이 하일라이트 된다.

ctrl-F10 을 누르면 하일라이트 되었던 것이 해제되어 원래 상태로 돌아간다.


색상은 세 가지로 만들어 두었다.

마음에 드는 색상으로 수정해서 쓰면 되겠다.

스크립트에서는 세가지 색상만 있는데, 더 많이 필요하다면 알아서 추가하면 되겠다.

키는 F10, F11, F12 에 각각의 색을 매핑해 놓았다.
즉, shift-F10/11/12 는 하일라이트, ctrl-F10/11/12 는 하일라이트 해제.


vim 이 실행될 때마다 항상 저 기능을 사용하고 싶으면, ~/.vim/plugin 에 적당한 이름으로 파일을 하나 만들고 위에 리스팅된 내용을 복사해 넣으면 된다.


나름대로 유용하게 쓰일 것 같다. 이히히..
(( 일하다 말고 엉뚱한데로 빠져서 두시간 가량 소비한 것 같네 -_-^
(( 정말 일 안된다 오늘...;;;


: