ctags는 말 그대로 c 언어 파일의 keyword, identifier를 출력해 주는 툴이다.

 ctags -R
을 실행하면 tags라는 파일이 생성이 된다.

source code [test.c]

command [ctags test.c]
file [tags]
!_TAG_FILE_FORMAT    2    /extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED    1    /0=unsorted, 1=sorted, 2=foldcase/
!_TAG_PROGRAM_AUTHOR    Darren Hiebert    /dhiebert@users.sourceforge.net/
!_TAG_PROGRAM_NAME    Exuberant Ctags    //
!_TAG_PROGRAM_URL    http://ctags.sourceforge.net    /official site/
!_TAG_PROGRAM_VERSION    5.4    //
CHARLEY    test.c    /^    CHARLEY,$/;"    e    file:
FALSE    test.c    /^    FALSE$/;"    e    file:
LINDA    test.c    /^    LINDA$/;"    e    file:
TOM    test.c    /^    TOM,$/;"    e    file:
TRUE    test.c    /^    TRUE,$/;"    e    file:
WIN32_VERSION    test.c    3;"    d    file:
boolean    test.c    /^} boolean;$/;"    t    file:
main    test.c    /^int main(int argc,char argv**)$/;"    f
test_int    test.c    /^int test_int;$/;"    v
test_int_static    test.c    /^static int test_int_static;$/;"    v    file:

command [ctags -n -u test.c]
file [tags]
!_TAG_FILE_FORMAT    2    /extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED    0    /0=unsorted, 1=sorted, 2=foldcase/
!_TAG_PROGRAM_AUTHOR    Darren Hiebert    /dhiebert@users.sourceforge.net/
!_TAG_PROGRAM_NAME    Exuberant Ctags    //
!_TAG_PROGRAM_URL    http://ctags.sourceforge.net    /official site/
!_TAG_PROGRAM_VERSION    5.4    //
WIN32_VERSION    test.c    3;"    d    file:
test_int_static    test.c    5;"    v    file:
test_int    test.c    6;"    v
TRUE    test.c    10;"    e    file:
FALSE    test.c    11;"    e    file:
boolean    test.c    12;"    t    file:
TOM    test.c    16;"    e    file:
CHARLEY    test.c    17;"    e    file:
LINDA    test.c    18;"    e    file:
main    test.c    21;"    f

Wikipedia의 ctags file format 에 관련된 내용

ctags의 옵션(도움말)

---
2011.10.28 추가

ctags 지원 언어
 
Posted by 구차니