mozilla
검색 결과

    Theme Packaging

    이 문서는 파이어폭스나 썬더버드에서 테마를 포장하는 방법에 대해서 기술하고 있습니다.

    준비사항

    파이어폭스나 썬더버드의 테마를 만들 때에는 Cascading Stylesheets(CSS) 에 대한 지식이 필수적이며, XBL에 대한 지식도 필요할 수 있습니다. 또한, 그래픽 디자인 및 미적 감각(...은 아닐지도)도 필요합니다. 하지만, 이 문서에서는 파이어폭스의 테마 창에서 보여질 수 있도록 테마를 포장하는 방법에 대해서만 기술할 것입니다.

    테마 파일의 구조

    파이어폭스/썬더버드의 테마는 다음과 같은 구조의 JAR 파일로 포장됩니다.

    theme.jar:
      install.rdf
      contents.rdf
      preview.png
      icon.png
      browser/files
      global/files
      mozapps/files
      communicator/files
      ...
    
    • 테마에 사용되는 크롬을 등록하기 위하여 chrome.manifest (Firefox/Thunderbird 1.5 의 경우) 나 contents.rdf 파일을 디렉토리 최상위단에 만들어 주어야 합니다. 또한 테마 윈도우에 나타낼 메타데이터를 정의하기 위한 install.rdf manifest 파일도 함께 만들어 주어야 합니다.
    • preview.png 는 테마 윈도우의 스크롤 가능한 미리보기 영역에 보여질 이미지입니다. 이미지의 사이즈는 어떤 크기로도 가능합니다.
    • icon.png 는 32x32 크기의 PNG (알파 투명도 값을 가질 수 있는)파일입니다. 이는 테마 윈도우의 테마 목록에서 보여집니다.

    install.rdf

    install.rdf manifest 는 다음과 같이 만들 수 있습니다:

    <?xml version="1.0"?>
    
    <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:em="http://www.mozilla.org/2004/em-rdf#">
    
      <Description about="urn:mozilla:install-manifest">
        <em:type>4</em:type>more properties
      </Description>      
    </RDF>
    

    install.rdf 에 본적으로 들어가야 하는 속성들

    install.rdf 파일에는 다음과 같은 속성들이 들어가야 합니다. 상세한 정보는 install.rdf Reference 에서 얻을 수 있습니다.

    • em:id
    • em:version
    • em:type
    • em:targetApplication
    • em:name
    • em:internalName

    install.rdf 에 선택적으로 들어갈 수 있는 속성들

    • em:description
    • em:creator
    • em:contributor
    • em:homepageURL
    • em:updateURL

    만약 여러분의 테마가 http://addons.mozilla.org 웹사이트에 게시된다면 updateURL 속성은 포함시키면 안 됩니다.

    샘플 install.rdf 파일

    <?xml version="1.0"?>
    
    <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:em="http://www.mozilla.org/2004/em-rdf#">
    
      <Description about="urn:mozilla:install-manifest">
        <em:id>{18b64b56-d42f-428d-a88c-baa413bc413f}</em:id>
        <em:version>1.0</em:version>
        <em:type>4</em:type>
    
        <!-- Target Application this extension can install into, 
             with minimum and maximum supported versions. -->
        <em:targetApplication>
          <Description>
            <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
            <em:minVersion>0.8</em:minVersion>
            <em:maxVersion>0.9</em:maxVersion>
          </Description>
        </em:targetApplication>
        
        <!-- Front End MetaData -->
        <em:name>New Theme 1</em:name>
        <em:description>A test theme for Firefox</em:description>
        <em:creator>Ben Goodger</em:creator>
        <em:contributor>John Doe</em:contributor>
        <em:homepageURL>http://www.bengoodger.com/</em:homepageURL>
    
        <!-- Front End Integration Hooks (used by Theme Manager)-->
        <em:internalName>newtheme1</em:internalName>
      </Description>
    </RDF>
    

    아래의 것은 통상적인 타겟 어플리케이션의 GUID 입니다. 여러분은 이 GUID 를 여러분의 targetApplication 속성에 정의할 수 있습니다:

    Firefox      {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
    Thunderbird  {3550f703-e582-4d05-9a08-453d09bdfdc6}
    Sunbird      {718e30fb-e89b-41dd-9da7-e25a45638b28}
    

    문서 태그 및 공헌자

    Contributors to this page: teoli, 애들아빠
    최종 변경: teoli,