본문 바로가기
Application

Eclipse + CakePHP 환경에서 코드 자동 완성(Code Complete) 구현하기

by o테리o 2011. 2. 10.

CakePHP의 특수성 때문에 코드 자동 완성(Code Complete) 기능에 일부 제약이 있어서
코딩 작업시에 불편함을 겪는다.

이에 해결방법을 찾아보았다.

먼저 구글링한 URL 몇개는 다음과 같다.

http://groups.google.com/group/cake-php/browse_thread/thread/04b94b593714b394/9c71e02157bcaacd
http://mark-story.com/posts/view/code-completion-for-cakephp-in-eclipse
http://cakebaker.42dh.com/2007/10/12/code-completion-in-views-with-eclipse-pdt/

위 포스트만 봐서는 헷갈리는 부분도 있고 아직 완전히 이해는 되지 않아서
나름대로 테스트 해본 내용을 남긴다.


1. controller 또는 component에서 code complete

app_controller.php를 아래와 같이 수정하자. 

비슷한 몇가지 변형 테스트를 해 보았으나 작동되지 않는다.
아래의 형태를 그대로 지켜야 되는 듯...

아래는 controller에서 code complete 예


기본적인 component 등록 소스는 여기

/**
 * @var AclComponent
 */
var $Acl;
/**
 * @var AuthComponent
 */
var $Auth;
/**
 * @var CookieComponent
 */
var $Cookie;
/**
 * @var EmailComponent
 */
var $EmailComponent;
/**
 * @var RequestHandlerComponent
 */
var $RequestHandler;
/**
 * @var SecurityComponent
 */
var $Security;
/**
 * @var SessionComponent
 */
var $Session;


2. view에서 code complete

include를 해도 되고 view파일(*.ctp) 상단에 추가해도 된다. -> 하나의 파일에만 넣어주니까 되네... 원리가 도대체 뭐야!!!
아래와 같은 형식을 지켜주면 된다.
유사한 변형 테스트 안된다. 이유는 잘 모르겠다.


아래는 view에서 code complete 예


기본적인 helper 등록 소스는 여기

<?php
/* @var $html HtmlHelper */
/* @var $ajax AjaxHelper */
/* @var $form FormHelper */
/* @var $javascript JavascriptHelper */
/* @var $number NumberHelper */
/* @var $session SessionHelper */
/* @var $text TextHelper */
/* @var $time TimeHelper */
/* @var $paginator PaginatorHelper */
/* @var $rss RssHelper */
/* @var $xml XmlHelper */
?>



지금은 작업 시간을 줄이는 정도로 하고
헷갈리는 부분은 나중에 좀 구체화 되면 정리하도록 하자.

고고씽~~

출처 : http://chez.egloos.com/1871009

'Application' 카테고리의 다른 글

Editplus Svn 설정  (0) 2011.02.28