Devel::PerlySense 사용기 ~ part 1 ~

펄 모듈 사용기라기 보다는 이맥스 활용기가 되는 포스트가 되겠다. 이 손목분쇄기를 사용으로 인해 혈액순환이 잘 안되는 문제를 격고 있어 슬슬 떠날라는 찰나 #perl@hanircaero 교주님이 척하고 던져 주신 Devel::PerlySense라는 꽤 diabolic한 모듈을 알게 되어 심장마비를 무릅쓰고 사용후기를 기록하게 되었다.  멍한 상태에서 시작한 포스트였는데 파트를 3개로 나누어 작성해야 할정도로 흥미 진진 한 모듈이 되었다.


우선 이맥스를 다른 주제다 보니 유혈을 부르는 상황도 감안하고 키보들 찍고 있다 우선 아래의 링크를 통해 분위기를 읽고 포스트를 접해 주길 바란다... (하단에 있는 대화만 읽어 주면 감사하겠당~)
http://diveintomark.org/archives/2001/10/22/laugh_its_satire

Devel::PerlySense라는 모듈은 CPAN을 통해 제공되며 이맥스에서 펄을 개발할때 누릴수 있는 최상(정말?)의 환경을 제공해 주는 모듈이 되겠다. 주로 펄 개발시 (요즘은 거의 기회가 없지만) cperl-mode, make-mode 그리고 perldoc.info로 간신히 버텨 왔지만 정작에 중요한 모듈 문서 참고 방법이 매우 빈약하여 언제나 무언가 허전하다고 느꼈었다... 그리고 그 허전함을 채워주는 기특한 모듈이 오늘 내가 소개할 내용이 되겠다. cperl-mode를 먼저 소개하는게 바람직 하겠지만 JEEN님이 소개해 주시면 매우 행복할꺼 같다.

이번 파트는 Devel::PerlySense 설치와 주요 모듈관련 기능을 다루도록 하겠다.

 

** 설치 **

OS 환경: Windows Vista 홈 에디션
EmacsW32 Version: GNU Emacs 22.0.990.1 (i386-mingw-nt6.0.6000)
Devel::PerlySense Version: 0.0147
Perl Version: 5.8.8


설치 순서는 ppm 패키지 매니지먼트를 통해 Devel::PerlySense를 인스톨 하고 Devel::PerlySense POD문서에 제공하는 이맥스 설정 코드PerlySense Config을 내 .emacs 파일에 철푸덕 붙여 넣음으로써 어벙벙 할정도로 간단하게 설치가 종료 되었다.

여기서 주의 할점이 있다면 ppm에 새로운 Devel::PerlySense를 제공하고 있는 repository를 등록해주는것과 start /MIN perly_sense process_inc 커맨드를 실행하여 @INC에 있는 모듈 소스들을 캐쉬해주는 작업이 선행되어야 한다는 점이 되겠다.


:: 경고 ::

start /MIN perly_sense process_inc 커맨드 실행후 엄청난 수의 파일작업을 꽤 오래 하니 작업 도중이라면 자제 하도록 하자



우선 Devel::PerlySense 모듈 설치후 이맥스로 펄 개발시 누릴수 있는 윤택함과 내태함을 가능케 하는 기능과 마법을 스크린샷과 함께 간단히 소개만 하도록 하겠다.

1.  Smart Docs
예전에는 딥다 오래된 펄 5.6의 모듈 문서를 info파일로 만들어 모듈정보를 참고 하긴 했는데 새로이 설치된 모듈을 참조 못한다던지 문서가 너무 오래된 이유로 이질감이 느껴 무시하고 살았지만 Smart Docs을 통해 새로이 설치된 싱싱한 모듈을 열람 할수 있으니 이리 좋을수가 없다 (VIM을 쓸땐 이런 고민이 없었다).

예) 커서를 use File::Sort;로 옮긴후 C-o C-d 바인딩으로 실행시킨후의 화면이 되겠다.



2.  Smart go to
모듈 소스로 곧바로 이동해 주는 기특한 기능이 되겠다.  C-o C-g 바인딩으로 잡혀 있으며 속도는 약간 느리지만 디렉토리를 헤집고 들어가 헥헥 거릴 필요 없겠다.

모듈 검색을 시작한 후 이동을 한다.

우선 여기까지는 별로 감히가 안올꺼다.... 안다 나도 그랬다.

3.  Class Overview

아마도 이 모듈이 제공하는 최고의 기능이라고 할수 있겠다.  이름만 가지고 오해 할수 있을지 모르나 구성에 사용된 모듈이나 상속, 이웃 모듈 (아마도 관계된 모듈들), 묵마크 그리고 API까지 모듈에 대한 해체신서라고 할수 있겠다. 말이 필요 없다 스샷을 보도록 하자..

우선 Smart Go를 이용해 분석대상 모듈 소스로 이동을 한다.

이동한 버퍼에서 C-o C-o 바인딩을 이용해 Class Overview를 실행시키면 아래와 같은 화면이 뜰것이다.


IO::File 모듈을 분석대상으로 실행 시켰는데 분석결과에 다시 펄에대한 경애심과 이질감이 동시에 떠 올랐다... 쩝 암튼 펄은 정열이고 기합이다.

그리고 이건 WWW::Mechanize를 대고 돌려 보았다
그리고 리스트로 나온  is_html 메소드를 클릭한 순간....

들린다 당신들의 질투와 부러움이 오늘 하루를 망치고 있다는것을...... 나도 그랬었다 부끄러워 할 필요없다


4.  Run File

마지막으로 이맥스에 펄 스크립을 돌릴때 make-mode를 따로 깔고 바인딩을 새로 해주지않으면 안된다는게 항상 불만이었는데 C-o C-r 바인딩으로 잡혀 있어 매우 기뻤다.


뚠!! 좋다~ >_<b


한가지 흠이 있다면 실행 속도가 전체적으로 느린듯 하다 아마도 상당수의 파일을 캐쉬하는 작업을 해서 그런지 윈도우에서만 그런지 확인은 안해 보았다 그래도 쓸만하다 모듈 정보 열람할때는 최고라고 전달 하고 싶다.

주로 이정도 수준의 이맥스 모드를 설치를 하거나 사용할때 상당 시간이 걸린다 그리고 막상 사용하다 보면 지쳐서 다시 가벼운 셋티으로 돌아가는게 허다한데 이정도의 복병이 있을 줄 몰랐다 언제나 유익한 것들만 소개 해주시는 aero님께 다시 감사 드린다~


다음 파트는 이 모듈을 좀더 핥아본후 Flymake라는 기능에 대해 소개해 보도록 하겠다.  Flymake를 간단히 소개한다면 외부 툴을 이용한 문법 체크를 해주는 기능이 되겠는데 Perl::Critic같은 모듈을 이용해 당신이 작성하고 있는 스크립이 Damian ConwayPerl Best Practices를 준수하는지 채찍질을 해주는 훌륭한 모듈이다...

by ataraxia | 2008/03/26 02:08 | 트랙백(3) | 덧글(0)

트랙백 주소 : http://saillinux.egloos.com/tb/1552719
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Tracked from Bbw dating s.. at 2008/11/14 22:23

제목 : Free bbw dating sites.
Dating sites bbw. Bbw dating sites....more

Tracked from Buy carisopr.. at 2008/12/02 13:29

제목 : Buy carisoprodol online lowe..
Buy carisoprodol online lowest price guarantee. Buy carisoprodol. Carisoprodol buy cheap carisoprodol order online....more

Tracked from Bad driver a.. at 2008/12/02 16:36

제목 : How to get an auto insurance..
Auto insurance quote on pt cruiser. Free auto insurance quote. Auto insurance quote....more

:         :

:

비공개 덧글

<< 이전 페이지다음 페이지 >>