새소식

사용팁

cgvg 소개 및 확장자 추가하기

  • -


리눅스에서 텍스트 검색할 때 가장 많이 쓰는 게 grep이지만 여러 파일에 매치되는 키워드로 검색을 하고 해당 내용을 찾아 편집을 하다 보면 불편한 점이 한 두개가 아닙니다. 강력한 만큼 반복해서 타이핑해야 되는 옵션이나 검색 결과에 접근하는 부분이 불편해서인데 cgvg란 펄 기반 프로그램을 쓰면 좀더 편하게 사용할 수 있습니다.

데비안 계열에서는 패키지로 제공이 됩니다.

grep으로 'Logout'이란 문자열을 grep -rn 'Logout' . 정도의 옵션을 입력해야 재귀적으로(-r) 줄번호 표시해서(-n) 현재 디렉토리에서 시작하는(.) 옵션을 덕지덕지 붙여야 됩니다. cgvg는 다음과 같이 간단하게 할 수 있습니다.

게다가 grep으로 찾았을 때 위 그림에서 두번째 파일을 찾아가야 하는 경우 vim global/common-links.html.tmpl +67 의 명령을 일일이 쳐주거나 터미널이면 마우스로 긁어붙이는 수고를 더해야 하지만 cgvg는 해당 줄 맨 앞에 있는 숫자만 주목해주면 됩니다.

그러면 일일이 타이핑하지 않고도 vim이 실행되어 해당 줄에 커서가 위치합니다.

다 좋은데 단점이 있습니다. 자동으로 찾는 확장자가 제한이 있습니다. 기본적으로 Make.*, *.c, *.h, *.s, *.cc *.pl, *.pm, *.java *.php, *.*sh, *.idl 만 찾습니다. 이 외에 확장자는 cg '패턴' '*.html' 같은 형태로 직접 확장자를 지정해야 합니다.

이를 수정하는 방법은 두 가지가 있습니다.

하나는 /usr/share/cgvg/cgvgrc-example 파일을 홈 디렉토리의 .cgvgrc로 복사해서 SEARCH= 항목의 주석을 해제하고 파이프 문자('|')로 구분되는 확장자를 추가해주면 됩니다.
이것은 해당 파일을 소유한 사용자에게만 적용됩니다. 하지만 이 파일의 주석만 잘 읽어도 직접 설정할 수 있게 쉽고 명료하고 편집기(EDITOR)를 vim이 아닌 선호하는 것으로 바꿀 수도 있습니다. 색깔(COLOR)이나 출력을 화면 단위로 멈추게 하는 프로그램(PAGER, 예를 들면 more 나 less)까지 지정할 수 있습니다.

또 다른 방법은 /usr/share/cgvg/cgvg-common.pl 파일에서 $SEARCH= 항목에다 추가해주면 됩니다. 이 방법은 계정 상관없이 모두 적용되지만 프로그램 코드를 직접 고치기 때문에 Perl 언어에 대한 지식이 없다면 프로그램이 꼬이거나 실행되지 않을 수도 있습니다. 이 파일을 직접 수정할 때에는 원본 파일을 꼭 따로 보관하고 수정하는게 안전합니다.

참고 글

http://www.uzix.org/cgvg.html

cgvg man page

cgvg configuration file /usr/share/cgvg/cgvgrc-example

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.