Documents



[ Extending Adobe DreamWeaver CS4 ]


[ Adobe DreamWeaver CS4 API Reference ]






Extension 제작하기




1. 개요
  • DreamWeaver는 Configuration 폴더 하위의 파일들로 전반적인 UI와 기능을 구현한다. 이 점을 이용하여 Extension을 제작, 관리할 수 있다.
    Configuration 폴더는 기본적으로 드림위버 설치경로\Configuration이지만 다중사용자 운영체제의 경우 사용자 폴더를 이용한다.
    Extension을 로딩할 때 사용자 폴더를 먼저 뒤지고, 없으면 드림위버 설치경로에서 찾아보는 순서다.
    실제로 Extension을 패키지로 제작하여 설치하면 Windows의 경우 사용자 폴더에 설치된다.
    C:\Documents and Settings\사용자\Application Data\Adobe\Dreamweaver CS4\Configuration
    (언어설정이 있을 경우 en_US, ko_KR 등의 언어폴더가 한 단계 더 있음)

 

  • 제작하고자 하는 Extension의 성격에 따라 Configuration 하위의 어떤 폴더, 파일을 이용할지는 Adobe에서 제공하는 문서에 의존해야 한다.
    먼저 Extending Adobe Dreamweaver CS4 문서를 참고하여 제작하고자 하는 Extension이 사용할 폴더, 파일을 알아낸 뒤 HTML, XML, JavaScript 를 이용하여 원하는 Extension을 제작하면 된다.
    JavaScript로 할 수 없는 기능(로컬파일 읽기,쓰기 혹은 HTTP 접속)이나 DreamWeaver 윈도우에 질의를 해야하는 경우 등은 Adobe DreamWeaver CS4 API Reference를 참조하여 사용할 API를 결정하면 된다.

 

  • 우선 처음에는 있는 파일을 수정하거나 하는 방식으로 접근해 볼 수 있다.
    예를 들어 코드힌트가 어떤 방식으로 돌아가는 지 보고 싶다면
    C:\Program Files\Adobe\Adobe Dreamweaver CS4\configuration\CodeHints\CodeHints.xml 파일을 직접 수정해서 비교해 보면서 감을 잡자.
    문서를 읽어보면 CodeHints 기능은 CONFIGURATION\CodeHints 디렉토리에 있는 xml 파일을 전부 읽어들인다고 되어 있으므로,
    코드힌트 메인파일인 CodeHints.xml 파일을 수정하지 않고 CodeHints에 맞는 포맷을 가진 임의의 xml 파일을 만들어서 추가해 보면 된다.
    추후 패키지로 만들 때 이렇게 만들어지고, 수정되어진 파일을 필요로 하게 된다.
    나머지 기능들도 문서를 참고해서 사용할 폴더, 파일을 알아낸 다음 작업을 진행하면 된다.
    Extension을 만들고 설치할 때 왠만하면 공통적인 파일은 건드리지 않는 것이 좋으므로, 다른 파일을 하나 더 생성하는 식으로 진행하자.



 

2. 제작예제

CodeHints를 추가해보는 예제.
국가코드와 통화기호를 코드힌트로 제공하는 Extension을 제작함.



1. C:\Program Files\Adobe\Adobe Dreamweaver CS4\configuration\CodeHints 폴더에 MyCodeHints.xml 파일을 하나 만든다.









2. MyCodeHints.xml 파일의 내용을 아래처럼 입력한 후 저장한다.
영문판의 경우 xml파일의 인코딩을 UTF-8로 지정하고 저장해야 한글이 제대로 나온다.
주석으로 간략한 설명이 적혀 있지만, 자세한 사항은 상단의 Extending 문서를 참고하자.

<codehints xmlns:MMString="http://www.macromedia.com/schemes/data/string/">
   
<!-- 코드힌트 그룹 -->
<menugroup name="MyCodeHints" enabled="true" id="CodeHints_MyCodeHints">
    <!-- 코드힌트 설명 -->
    <description>
        MyCodeHints
    </description>
   
    <!-- 코드힌트: 국가 -->
    <menu pattern="country=" DOCTYPES="HTML">
        <menuitem label="미국" value="en_US" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="대한민국" value="ko_KR" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="독일" value="de_DE" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="프랑스" value="fr_FR" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="일본" value="ja_JP" icon="shared/mm/images/hintMisc.gif" />
    </menu>
   
    <!-- 코드힌트: 통화기호 -->
    <menu pattern="currency=" DOCTYPES="HTML">
        <menuitem label="달러" value="$" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="원" value="₩" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="마르크" value="ℳ" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="유로" value="€" icon="shared/mm/images/hintMisc.gif" />
        <menuitem label="엔" value="¥" icon="shared/mm/images/hintMisc.gif" />
    </menu>
 

</menugroup>

</codehints>





 

3. 코드힌트를 reload 하기 위해 드림위버를 재시작한다.
(재시작하지 않고 Extension reload를 할 수 있지만 코드힌트는 재시작을 해야 적용된다.)
다시 시작된 드림위버에서 HTML 파일을 연 다음 코딩창에서 country=, currency= 이라고 입력했을 때 아래처럼 나오면 성공.










4. 이 코드힌트를 DreamWeaver Extension Package로 만든다.
설치정보를 저장하는 mxi 파일과 패키지 파일인 mxp 파일을 생성해야 한다.
우선 아무곳이나 아래처럼 mxi 파일을 하나 만들고, 코드힌트 파일(MyCodeHints.xml)도 복사해두자.









5. MyCodeHints.mxi 파일의 내용은 아래처럼 구성하자.
xml 포맷으로 구성되는 설치정보이다.
각 자세한 사항은 문서참조.

<macromedia-extension
     name="My Code Hints"
     version="1.0.0"
     type="suite">
  
    <author name="MyName" />
  
    <products>
        <product name="Dreamweaver" version="10" primary="true" />
    </products>
  
    <description>
    <![CDATA[
    My Test DreamWeaver Extension
    ]]>
    </description>
  
    <ui-access>
    <![CDATA[
    CodeHints
    1. country=
    2. currency=
    ]]>
    </ui-access>
  
    <license-agreement>
    <![CDATA[
    GNU GPL v3
    ]]>  
    </license-agreement>
  
    <files>
        <file source="MyCodeHints.xml" destination="$Dreamweaver/configuration/CodeHints" />
    </files>
</macromedia-extension>







6. 아래처럼  Extension Manager를 이용하여 패키지를 생성하자.


6-1. File > Package Extension 선택







6-2. MyCodeHints.mxi 파일 선택








6-3. 생성될 mxp 파일 이름 지정 후 패키지 생성








6-4. mxp 패키지 생성완료


















7. 생성된 패키지를 설치한 후 드림위버를 재시작하고 코드힌트가 제대로 동작하는 지 확인.
Posted by bloodguy
,