반응형
안녕하세요. TDR입니다.
이번에 OS과제를 하다보니 필수적으로 써야하는 기능이 있었는데 그게 ctags입니다.
ctags란 code file들을 상위 level에서 묶어서 관리해줌으로써 내가 필요한 함수, 구조체, 클래스, 변수 등의 선언부로 jump 할 수 있게 해주는 기능으로 이 함수의 구현을 보고 싶다면 그 함수가 선언된 code file을 직접 열어보지 않고도 손 쉽게 이동 할수 있는 기능을 말합니다.
그럼 우선 ctags 설치 방법을 알아보면... 음... 갑자기 말문이 막히는데 제가 이 정보가 과연 어디까지 사실(?)인지 알 수가 없기 때문에 그렇습니다. 그냥 제가 아는대로 찌껄이겠습니다. ( -_- 양해 please~)
UNIX에서도 되고 LINUX에서도 되는 것으로 알고는 있는데 과연 UNIX에서 되는 지는 확인해 보지 않아서 알 수는 없고 일단 ctags를 설치하기 위해서는
>yum install ctags
를 입력합니다. 그러면 install이 될 것이고 그 다음에는 관리하는 code file들이 있는 folder 위에서
>ctags -R
를 실행합니다. 그러면 tags file이 생성 될 것입니다. vi로 열어보면 관리하는 code들이 쭉~ 나올 것입니다. 그 다음이 조금 많이(?) 햇갈리는 곳인데 $HOME folder에 있는 .vimrc 파일을 수정하는 것입니다. .vimrc 파일이 어디 있는지 눈으로 보고 싶으시다면 그냥 ls 명령어가 아닌 ls -a 옵션을 줘야지 숨겨진 파일까지 다 볼 수 있습니다. 그럼 .vimrc 파일을 어떻게 수정해야 하냐면은... 그냥 첫번째 줄에 아래 코드를 추가해 줍니다.
set tags =./tags
set tags +=[ctags -R 명령어로 생긴 tags가 있는 절대 경로]
를 넣어 줍니다. 그러면 다 끝났습니다. 인제 code file로 가서 선언부를 보고 싶은 함수, 변수 등에 프롬프트(맞나? -_-;;;)를 가져다 놓고 Ctrl+] 를 누릅니다. 그러면 해당 함수, 변수 등의 선언부로 jump를 하게 됩니다. 여기서 또 다른 선언부를 보고 싶다하면 다시 Ctrl+]를 실행하면 됩니다. 그리고 전 단계로 되돌아 가고 싶으면 Ctrl+t를 누르시면 됩니다.
ctags는 stack과 같은 개념으로 jump를 하기 때문에 순차적으로 싸였다가 순차적으로 없어지게 됩니다. 써보시면 아시겠지만 정말정말 편합니다...
아, 그리고 혹시 telnet을 사용하여 server에 접속해서 하시는 분이라면 Ctrl+] 를 누루시면 telnet의 이상한(?) 환경으로 넘어가시게 되는데 이건 telnet에서의 Ctrl+] 이 escape 명령어이기 때문입니다. 그렇다면 이상한(?) 환경에서 아래와 같은 명령어를 사용하여 escape 명령어를 바꾸어 주시면 됩니다.
set escape [새로운 escape key]
그러면 [새로운 escape key]가 telnet의 escape 명령어가 되어 Ctrl+] 를 사용하 실 수 있을 겁니다. 그냥 해제하고 싶다! 하시는 분은 아래와 같이 입력하시면 됩니다.
unset escape
그러면 그냥 escape명령어가 해제됩니다.
그럼 모두 평안한 하루 되시길~ (-_-)/
이번에 OS과제를 하다보니 필수적으로 써야하는 기능이 있었는데 그게 ctags입니다.
ctags란 code file들을 상위 level에서 묶어서 관리해줌으로써 내가 필요한 함수, 구조체, 클래스, 변수 등의 선언부로 jump 할 수 있게 해주는 기능으로 이 함수의 구현을 보고 싶다면 그 함수가 선언된 code file을 직접 열어보지 않고도 손 쉽게 이동 할수 있는 기능을 말합니다.
그럼 우선 ctags 설치 방법을 알아보면... 음... 갑자기 말문이 막히는데 제가 이 정보가 과연 어디까지 사실(?)인지 알 수가 없기 때문에 그렇습니다. 그냥 제가 아는대로 찌껄이겠습니다. ( -_- 양해 please~)
UNIX에서도 되고 LINUX에서도 되는 것으로 알고는 있는데 과연 UNIX에서 되는 지는 확인해 보지 않아서 알 수는 없고 일단 ctags를 설치하기 위해서는
>yum install ctags
를 입력합니다. 그러면 install이 될 것이고 그 다음에는 관리하는 code file들이 있는 folder 위에서
>ctags -R
를 실행합니다. 그러면 tags file이 생성 될 것입니다. vi로 열어보면 관리하는 code들이 쭉~ 나올 것입니다. 그 다음이 조금 많이(?) 햇갈리는 곳인데 $HOME folder에 있는 .vimrc 파일을 수정하는 것입니다. .vimrc 파일이 어디 있는지 눈으로 보고 싶으시다면 그냥 ls 명령어가 아닌 ls -a 옵션을 줘야지 숨겨진 파일까지 다 볼 수 있습니다. 그럼 .vimrc 파일을 어떻게 수정해야 하냐면은... 그냥 첫번째 줄에 아래 코드를 추가해 줍니다.
set tags =./tags
set tags +=[ctags -R 명령어로 생긴 tags가 있는 절대 경로]
를 넣어 줍니다. 그러면 다 끝났습니다. 인제 code file로 가서 선언부를 보고 싶은 함수, 변수 등에 프롬프트(맞나? -_-;;;)를 가져다 놓고 Ctrl+] 를 누릅니다. 그러면 해당 함수, 변수 등의 선언부로 jump를 하게 됩니다. 여기서 또 다른 선언부를 보고 싶다하면 다시 Ctrl+]를 실행하면 됩니다. 그리고 전 단계로 되돌아 가고 싶으면 Ctrl+t를 누르시면 됩니다.
ctags는 stack과 같은 개념으로 jump를 하기 때문에 순차적으로 싸였다가 순차적으로 없어지게 됩니다. 써보시면 아시겠지만 정말정말 편합니다...
아, 그리고 혹시 telnet을 사용하여 server에 접속해서 하시는 분이라면 Ctrl+] 를 누루시면 telnet의 이상한(?) 환경으로 넘어가시게 되는데 이건 telnet에서의 Ctrl+] 이 escape 명령어이기 때문입니다. 그렇다면 이상한(?) 환경에서 아래와 같은 명령어를 사용하여 escape 명령어를 바꾸어 주시면 됩니다.
set escape [새로운 escape key]
그러면 [새로운 escape key]가 telnet의 escape 명령어가 되어 Ctrl+] 를 사용하 실 수 있을 겁니다. 그냥 해제하고 싶다! 하시는 분은 아래와 같이 입력하시면 됩니다.
unset escape
그러면 그냥 escape명령어가 해제됩니다.
그럼 모두 평안한 하루 되시길~ (-_-)/
반응형
'Computer & Program > 잡다한 이모저모' 카테고리의 다른 글
헝가리 표기법(Hungarian Notation) (0) | 2010.01.05 |
---|---|
ASCII Coed (2) | 2009.11.23 |
[Computer]방 구석에 굴러 다니던거 정리 (0) | 2009.07.29 |
[C++]계승 (2) | 2009.07.28 |
[Linux]디렉토리 구조 (2) | 2009.07.27 |
댓글