티스토리 뷰
$cscope -R
-R: 하위 디렉토리도 검색에 포함
-b: 검색 화면으로 들어가지 안혹 교차 참조만 만들어 내라
-q: 빠른 심볼 참조를 위해 역 색인을 만들어내라
(기본 데이터베이스 파일인 cscope.out 이외에 cscope.in.out과 cscope.po.out 파일 두개가 더 생김)
-k: 기본 인클루드 디렉토리 경로인 /usr/include를 무시하는 커널 모드 옵션
-d: 교차 참조 색인을 만들지 않고 바로 검색 화면으로 들어가는 옵션
*** 검색 조건 ***
메뉴 | 설명 | 비고 |
Find this C symbol: | C 함수나 변수를 검색 | |
Find this global definition: | 매크로나 함수 구현부, 전역 변수 선언을 검색 | |
Find functions called by this function: | 이 함수가 호출한 다른 함수를 검색 | |
Find functions calling this function: | 이 함수를 호출한 다른 함수를 검색 | |
Find this text string: | 텍스트 문자열을 찾는다 | |
Change this text string: | 텍스트 문자열을 치환 | 치환 문자열은 하단에서 입력 |
Find this egrep pattern: | egrep에서 사용하는 정규 표현식으로 검색 | 조금 느림 |
Find this file: | 파일 명으로 검색 | |
Find files #including this file: | 이 파일을 인클루드하는 다른 파일 검색 |
*** 단축키 ***
키 | 설명 |
tab, enter, ctrl + n(^n), ctrl + ↓(^↓) | 다음 입력 필드로 이동 |
ctrl + p(^p), ctrl + ↑(^↑) | 직전 입력 필드로 이동 |
^b | (히스토리) 직전 입력 필드로 이동해서 입력값을 채워 줌 |
^f | (히스토리) 다음 입력 필드로 이동해서 입력값을 채워 줌 |
^c | 검색 시 대소문자 구분 켜고/끄기 |
^r | 교차 참조 파일 다시 생성 |
! | 셀로 잠시 빠져 나감 |
^l | 화면 다시 고침 |
? | 도움말 화면 |
^d | cscope 빠져 나가기 |
1-9 | 목록에서 나온 결과를 선택해서 바로 편집기를 띄움 |
space, +, ^v | 다음 목록 화면 표시 |
- | 직전 목록 화면 표시 |
^e | 목록 순서대로 편집 시작 |
> | 출력 목록을 파일에 덧붙임 |
| | 출력 목록을 셀 명령으로 파이프 |
↑ / ↓ | 출력 목록 내에서 위/아래로 이동 |
*** Change this text string: - 치환 명령에서 - 단축키 ***
키 | 설명 |
1-9 | 목록에서 나온 결과 중 특정 행을 선택하거나 선택 해제함 |
* | 출력된 모든 행을 선택하거나 선택 해제함 |
space, + | 다음 목록 화면 표시 |
- | 직전 목록 화면 표시 |
A | 모든 행을 바꾼다고 선택 |
^d | 선택된 행을 변경하고 치환 기능 종료 |
ESC | 변경하지 않고 치환 기능 종료 |
*** vim 에서 cscope 사용
http://cscope.sourceforge.net/cscope_maps.vim 파일의 내용을 ~/.vimrc 파일에 추가한다.
이후 명령어 모드에서
:cs find <질의_방법> <심볼_이름>
과 같이 사용하도록 한다. -아래 링크 참조-
*** 참고
https://ysoh.wordpress.com/2012/04/09/리눅스-커널-개발을-위한-vim-설정-vimrc/
'Linux' 카테고리의 다른 글
Vim Cheat Sheet (0) | 2019.08.12 |
---|---|
정규 표현식 (0) | 2019.08.12 |
tag: vi 에서 검색을... (0) | 2019.08.12 |
find와 grep을 활영한 문서내 문자열 검색 (0) | 2019.08.12 |
find (0) | 2019.08.12 |