수요일, 9월 06, 2006

Emacs: TAB키를 이용하여 자동 완성(auto complete) 기능 활용하기

이 내용은 "http://www.emacswiki.org/cgi-bin/wiki?EmacsNiftyTricks" 의 내용을 참조한 것입니다.

M-/ 자동 완성 기능을 사용하면 코드 작성 중에 입력하는 긴 변수명이라든가 함수 명등을 자동으로 완성시킬 수 있다. 예를 들면,

expectedFreeSize 라는 변수 명을 사용하였다면 다음 번 이 변수명을 입력 시 exp 와 같은 앞 부분 문자열을 입력 후 M-/ 키를 입력하여 자동 완성 시킬 수 있다.

이러한 기능을 키에 Mapping하면 더욱 직관적으로 사용할 수 있다. 아래와 같은 스크립트를 .emacs 파일에 추가하면 된다.
(defun indent-or-complete ()
"Complete if point is at end of a word, otherwise indent line."
(interactive)
(if (looking-at "\\>")
(dabbrev-expand nil)
(indent-for-tab-command)
))

(add-hook 'c-mode-common-hook
(function (lambda ()
(local-set-key (kbd "") 'indent-or-complete)
)))
만일 Java에도 적용하고자 한다면 add-hook에 추가하면 된다. 이렇게 설정 후 Emacs를 재가동하면 문자열 입력 중 가장 끝 에서 을 입력하면 자동 완성 기능이 동작한다.

댓글 없음: