~$ sudo apt-get install ctags
2. 분석하려는 Kernel 코드의 tag 파일 생성 - 1
~$ pwd
~/linux-2.6.36.2
~$ctags -R
~$ ls tags
tags
- -R 은 현재 위치에서 Recursive 하게 하위 디렉토리까지 Parsing 하는 옵션임~/linux-2.6.36.2
~$ctags -R
~$ ls tags
tags
c++ 파일에 대해 tag 를 생성할 때는 다음과 같이 하면 된다.
~$ ctags -R --language-force=c++ --extra=+q --fields=+i *.cpp *.h
3. 분석하려는 Kernel 코드의 tag 파일 생성 - 2
~$ pwd
~/linux-2.6.36.2
~$ make tags
~$ ls tags
tags
~/linux-2.6.36.2
~$ make tags
~$ ls tags
tags
4. vi(vim, gvim) 에서 사용법
~$ pwd
~/linux-2.6.36.2
~$ vim -t start_kernel
- tags 파일이 있는 곳에서 실행해야 함~/linux-2.6.36.2
~$ vim -t start_kernel
<C-]> : 커서 위치에 있는 단어를 검색하여 해당 파일로 이동
<C-t> : 이동 전 파일로 돌아가기
vi command mode 에서
:ta 검색어 : 검색어가 정의된 곳으로 이동 (첫번재 발견된 곳으로 이동하므로 부정확할 수 있음)
:tn : 그 다음 정의된 곳으로 이동
:tp : 그 전 정의된 곳으로 이동
:ts 검색어 : 검색어가 정의된 리스트를 조회 후 선택 이동
검색어를 입력 안 한 경우 바로 직전에 검색했던 리스트가 다시 보여짐
:tags 이동한 이력 목록을 출력
<C-t> : 이동 전 파일로 돌아가기
vi command mode 에서
:ta 검색어 : 검색어가 정의된 곳으로 이동 (첫번재 발견된 곳으로 이동하므로 부정확할 수 있음)
:tn : 그 다음 정의된 곳으로 이동
:tp : 그 전 정의된 곳으로 이동
:ts 검색어 : 검색어가 정의된 리스트를 조회 후 선택 이동
검색어를 입력 안 한 경우 바로 직전에 검색했던 리스트가 다시 보여짐
:tags 이동한 이력 목록을 출력
5. 기타
vim 환경설정파일에 다음과 같이 입력하면 ctags 검색 속도 개선이 된다.
~$ vim ~/.vimrc
#다음라인 추가
set tagbsearch
#다음라인 추가
set tagbsearch




댓글을 달아 주세요