<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY gnomeversion "2.14">
<!ENTITY manrevision "2.4">
<!ENTITY date "March 2004">
<!ENTITY LEGAL SYSTEM "legal.xml">
<!ENTITY gconf SYSTEM "gconf.xml">
<!ENTITY menustructure SYSTEM "menustructure.xml">
<!ENTITY themes SYSTEM "themes.xml">
<!ENTITY fontconfig SYSTEM "fontconfig.xml">
<!ENTITY mimetypes SYSTEM "mimetypes.xml">
<!ENTITY screensavers SYSTEM "screensavers.xml">
<!ENTITY sessions SYSTEM "sessions.xml">
<!ENTITY help SYSTEM "help.xml">
<!ENTITY performance SYSTEM "performance.xml">
<!ENTITY lockdown SYSTEM "lockdown.xml">
<!ENTITY appendixa SYSTEM "appendixa.xml">
<!ENTITY appendixb SYSTEM "appendixb.xml">
<!ENTITY gloss SYSTEM "glossary.xml">
]>
<book id="index" lang="ko"> 
  <title>그놈 2.14 데스크탑 시스템 관리 안내서</title> 
  <bookinfo> 
    <abstract role="description">
    <para>그놈 시스템 관리 안내서는 사용자들을 위해 다양한 데스크탑 환경을 설정하고 관리하는 방법을 설명합니다.</para>
    </abstract>
	 <copyright> 
		<year>2006</year> 
		<holder>Brent Smith</holder> 
	 </copyright>
	 <copyright> 
		<year>2005</year> 
		<holder>Brent Smith</holder> 
	 </copyright>
	 <copyright> 
		<year>2004</year> 
		<holder>Sun Microsystems</holder> 
	 </copyright>
	 <copyright> 
		<year>2003</year> 
		<holder>Sun Microsystems</holder> 
	 </copyright>

<!-- translators: uncomment this:
  <copyright>
   <year>2002</year>
   <holder>ME-THE-TRANSLATOR (Latin translation)</holder>
  </copyright>
-->
	 <publisher role="maintainer"> 
		<publishername>그놈 문서 프로젝트</publishername> 
	 </publisher>   <legalnotice id="legalnotice">
	<para>본 설명서는 프리 소프트웨어 재단(FSF)에서 발행한 GNU 자유 문서 라이센스(GFDL) 버전 1.1 이상의 조항에 따라 변경 불가 부분, 앞 표지 텍스트 및 뒷 표지 텍스트를 제외하고 복사, 수정 및/또는 배포할 수 있습니다. GFDL의 사본은 링<ulink type="help" url="ghelp:fdl">링크</ulink> 또는 본 설명서와 함께 배포된 COPYING-DOCS 파일에서 찾을 수 있습니다.</para>
         <para>본 설명서는 GFDL에 따라 배포된 그놈 설명서 컬렉션의 일부입니다. 본 설명서를 컬렉션과 별도로 배포하려는 경우에는 라이센스 조항 6에 따라 라이센스 사본을 설명서에 추가하면 됩니다.</para>

	<para>기업의 제품과 서비스를 식별하기 위해 사용된 많은 이름은 상표로 간주됩니다. 그놈 문서에 사용된 이름과 그놈 문서 프로젝트의 구성원은 해당 상표로, 모두 대문자로 표시되거나 첫 글자가 대문자로 표시되어 있습니다.</para>

	<para>문서 및 수정판은 다음 GNU 자유 문서 라이센스의 조항에 따라 제공됩니다. <orderedlist>
		<listitem>
		  <para>문서는 "있는 그대로"로 제공되며 상품성, 특정 목적에의 적합성 또는 준수에 대한 보증을 비롯한 일체의 명시적 또는 암시적인 보증을 제한 없이 부인합니다. 문서 및 수정판의 품질, 정확성 및 성능에 대한 책임은 전적으로 사용자에게 있습니다. 문서 또는 수정판에 대한 오류를 입증하려면 사용자(원저작자, 저작자 또는 배포자 아님)는 필요한 서비스, 수리 및 수정 비용을 부담해야 합니다. 본 보증 부인은 라이센스의 필수 부분에 해당합니다. 본 보증 부인을 따르지 않는 모든 문서나 수정판은 사용할 수 없습니다.</para>
		</listitem>
		<listitem>
		  <para>또한 불법 행위(부주의 포함), 계약 또는 직접, 간접, 특별, 부수적 및 파생적인 모든 손해(영업권 손실, 작업 중지, 컴퓨터 오류 및 고장 또는 본 문서나 수정판의 사용으로 인해 발생하거나 관련된 기타 모든 손실 및 이러한 손실 가능성에 대해 미리 공지한 경우에도 제한되지 않음)에 대해서는 어떠한 상황이나 법률적인 이론 하에서도 본 문서 또는 수정판의 저작자, 원저자, 모든 배포자 또는 공급자는 책임을 지지 않습니다.</para>
		</listitem>
	  </orderedlist></para>
  </legalnotice>

 

	 <authorgroup> 
		<author>
                  <firstname>Brent</firstname>
		  <surname>Smith</surname> 
		  <affiliation> 
			 <orgname>그놈 문서 프로젝트</orgname> 
		  </affiliation> 
		</author> 
		<author> 
		  <firstname>Sun</firstname> 
		  <surname>그놈 문서 팀</surname> 
		  <affiliation> 
			 <orgname>Sun Microsystems</orgname> 
		  </affiliation> 
		</author> 
	 </authorgroup>

	 <revhistory>
		<revision> 
		  <revnumber>그놈 2.14 데스크탑 시스템 관리 안내서 버전 2.4</revnumber> 
		  <date>2004년 3월</date> 
		  <revdescription> 
			 <para role="author">그놈 문서 프로젝트</para> 
			 <para role="publisher">그놈 문서 프로젝트</para> 
		  </revdescription> 
		</revision> 
		<revision> 
		  <revnumber>그놈 2.6 데스크탑 시스템 관리 안내서 버전 2.3</revnumber> 
		  <date>2004년 3월</date> 
		  <revdescription> 
			 <para role="author">Sun Microsystems</para> 
			 <para role="publisher">그놈 문서 프로젝트</para> 
		  </revdescription> 
		</revision> 
		<revision> 
		  <revnumber>그놈 2.4 데스크탑 시스템 관리 안내서 버전 2.2</revnumber> 
		  <date>2003년 9월</date> 
		  <revdescription> 
			 <para role="author">Sun Microsystems</para> 
			 <para role="publisher">그놈 문서 프로젝트</para> 
		  </revdescription> 
		</revision> 
		<revision> 
		  <revnumber>그놈 2.2 데스크탑 시스템 관리 안내서 버전 2.1</revnumber> 
		  <date>2003년 1월</date> 
		  <revdescription> 
			 <para role="author">Sun Microsystems</para> 
			 <para role="publisher">그놈 문서 프로젝트</para> 
		  </revdescription> 
		</revision> 
		<revision> 
		  <revnumber>그놈 2.0 데스크탑 시스템 관리 안내서 버전 2.0</revnumber> 
		  <date>2002년 12월</date> 
		  <revdescription> 
			 <para role="author">Sun Microsystems</para> 
			 <para role="publisher">그놈 문서 프로젝트</para> 
		  </revdescription> 
		</revision> 
	 </revhistory> 
	 <releaseinfo>이 설명서는 그놈 데스크탑 버전 2.14를 설명합니다.</releaseinfo> 
	 <legalnotice> 
		<title>피드백</title> 
		<para> To report a bug or make a suggestion regarding the GNOME Desktop or this
		  manual, follow the directions in the <ulink type="help" url="ghelp:user-guide?feedback">GNOME Feedback Page</ulink>.</para>
	 </legalnotice> 
  </bookinfo>
<chapter id="gconf-0">
  <title>GConf 사용하기</title>
  <highlights>
    <para>이 장에서는 사용자의 기본 설정 정보를 관리하기 위해 <application>GConf</application>를 사용하는 방법을 설명합니다.</para>
  </highlights>
  <sect1 id="gconf-1">
    <title>GConf 개요</title>
    <indexterm>
      <primary>GConf</primary>
      <secondary>개요</secondary>
    </indexterm>
    <para><application>GConf</application>를 이용하면 그놈 데스크탑 사용자들의 기본 설정 정보를 간단히 관리할 수 있습니다. <application>GConf</application>는 시스템 관리자가 다음과 같은 작업을 할 수 있도록 도와줍니다:</para>
    <itemizedlist>
      <listitem>
        <para>특정한 설정에 대해 모든 사용자에게 적용되는 필수값들을 지정합니다. 이를 이용하면, 시스템 관리자가 사용자들이 특정 설정을 변경할 수 있는지 제어할 수 있습니다.</para>
      </listitem>
      <listitem>
        <para>특정한 설정에 대해 모든 사용자에게 적용되는 기본값을 설정합니다.</para>
      </listitem>
      <listitem>
        <para>기본 설정의 정의 파일에서 제안하는 값들을 사용합니다.</para>
      </listitem>
      <listitem>
        <para>각 설정에 대한 문서를 읽습니다.</para>
      </listitem>
    </itemizedlist>
    <para><application>GConf</application>는 로컬 혹은 네트워크 상에서 설정값이 바뀐 경우에도 프로그램에게 알려줍니다. 따라서 설정값을 변경하면 해당 설정을 이용하는 모든 프로그램들이 즉시 업데이트 됩니다.</para>
    <para><application>GConf</application>는 다음과 같은 구성 요소들을 포함합니다:</para>
    <itemizedlist>
      <listitem>
        <para>사용자 기본 설정을 위한 저장소.</para>
      </listitem>
      <listitem>
        <para><command>gconfd-2</command> 데몬.</para>
      </listitem>
      <listitem>
        <para><command>gconftool-2</command> 명령행 도구.</para>
      </listitem>
    </itemizedlist>
  </sect1>
  <sect1 id="gconf-24">
    <title>GConf 저장소</title>
    <indexterm>
      <primary>GConf</primary>
      <secondary>저장소</secondary>
    </indexterm>
    <para><application>GConf</application> 저장소 내의 각 설정들은 키-값의 쌍으로 표현됩니다. <firstterm>GConf 설정 키</firstterm>는 특정 프로그램의 설정에 해당하는 저장소 내의 요소입니다. 예를 들어, <systemitem>/apps/gnome-session/options/show_splash_screen</systemitem> 설정 키는 <application>세션</application> 설정 도구 내의 <guilabel>로그인 시 스플래시 화면 보기</guilabel>에 해당하는 설정 키입니다. 그놈 데스크탑 사용자 인터페이스는 <application>GConf</application> 저장소 내의 모든 설정 키를 포함하지는 않습니다. 예를 들어 <application>패널</application> 설정 도구는 <systemitem>/apps/panel/global/tooltips_enabled</systemitem> 키에 해당하는 옵션을 갖고 있지 않습니다.</para>
    <para>저장소는 간단한 계층 구조의 파일 시스템과 같은 구조로 이루어져 있습니다. 저장소는 다음과 같은 요소들을 포함합니다:</para>
    <itemizedlist>
      <listitem>
        <para>디렉토리는 <application>GConf</application> 저장소를 이용하는 프로그램에 대응됩니다. 예를 들어 저장소 파일 시스템은 <systemitem>/apps/metacity</systemitem> 디렉토리를 포함합니다.</para>
      </listitem>
      <listitem>
        <para>하위 디렉토리는 설정들의 분류에 해당합니다. 예를 들어 저장소 파일 시스템은 <systemitem>/apps/metacity/general</systemitem> 디렉토리를 포함합니다.</para>
      </listitem>
      <listitem>
        <para>디렉토리 내의 설정 키 목록과 각 키에 대한 정보를 포함하는 특수 파일. 예를 들어 HTTP 프록시 설정에 관련된 키에 대한 정보를 포함하는 파일은 <systemitem>/system/http_proxy</systemitem> 디렉토리에 존재합니다.</para>
      </listitem>
      <listitem>
        <para><systemitem>/schemas</systemitem> 디렉토리는 모든 설정 키들을 설명하는 파일들을 포함합니다.</para>
      </listitem>
    </itemizedlist>
    <para>설정 키들은 일반적으로 문자열이나 정수 및 이들의 리스트와 같은 단순한 값을 가집니다. 저장소 내의 설정 키의 형식은 저장소를 읽기 위해 사용되는 백엔드 모듈에 따라 다릅니다. 다음은 <systemitem>/desktop/gnome/interface/font_name</systemitem> 설정 키가 XML 백엔드 모듈을 이용하여 저장소를 읽는 경우의 예입니다:</para>
    <programlisting><![CDATA[<entry name="font_name" mtime="1038323555" muser="user123" type="string">
<stringvalue>Sans 10</stringvalue></entry>]]></programlisting>
    <note>
      <para>이 안내서에서 설정 키를 가리키는 경우에는, 해당 키의 경로를 키의 이름에 더할 것입니다. 예를 들어 <systemitem>/desktop/gnome/interface</systemitem> 디렉토리 내의 <systemitem>font_name</systemitem> 설정 키는 <systemitem>/desktop/gnome/interface/font_name</systemitem>의 형태가 됩니다.</para>
    </note>
    <sect2 id="gconf-26">
      <title>GConf 설정 소스</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>설정 소스</secondary>
      </indexterm>
      <para><application>GConf</application> 저장소는 <firstterm>설정 소스</firstterm>라고 하는 일련의 저장 위치를 포함합니다. 설정 소스들은 <firstterm>GConf 경로 파일</firstterm> 내에 나열되어 있습니다. <application>GConf</application> 경로 파일의 위치는 <systemitem>/etc/gconf/<replaceable>gconf-버전-번호</replaceable>/path</systemitem>입니다. 각 사용자들은 하나의 경로 파일을 가집니다. 경로 파일은 각 설정 소스에 대해 다음과 같은 정보를 지정합니다:</para>
      <itemizedlist>
        <listitem>
          <para>저장소를 읽기 위해 사용되는 백엔드 모듈.</para>
        </listitem>
        <listitem>
          <para>저장소의 접근 권한.</para>
        </listitem>
        <listitem>
          <para>저장소의 위치.</para>
        </listitem>
      </itemizedlist>
      <para><application>GConf</application> 경로 파일은 <systemitem>include</systemitem> 명령도 포함합니다. 기본적으로 <application>GConf</application> 경로 파일의 내용은 다음과 같습니다:</para>
      <programlisting>xml:readonly:/etc/gconf/gconf.xml.mandatory
include /etc/gconf/2/local-mandatory.path
include "$(HOME)/.gconf.path"
include /etc/gconf/2/local-defaults.path
xml:readwrite:$(HOME)/.gconf
xml:readonly:/etc/gconf/gconf.xml.defaults</programlisting>
      <para><application>GConf</application>가 설정값을 찾을 때는, 경로 파일에 지정된 순서대로 설정 소스를 읽습니다. 아래의 표는 경로 파일 내의 설정 소스에 대해 설명합니다:</para>
      <informaltable frame="topbot">
        <tgroup cols="2" colsep="0" rowsep="0">
          <colspec colwidth="31.29*"/>
          <colspec colwidth="68.71*"/>
          <thead>
            <row rowsep="1">
              <entry>
                <para>설정 소스</para>
              </entry>
              <entry>
                <para>설명</para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry valign="top">
                <para>필수</para>
              </entry>
              <entry valign="top">
                <para>이 설정 소스에 대한 접근 권한은 읽기 전용으로 설정됩니다. 사용자들은 이 설정 소스의 값을 변경할 수 없으므로, 이 설정 소스 내의 설정들은 필수적입니다.</para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>사용자</para>
              </entry>
              <entry valign="top">
                <para>이 설정 소스는 사용자의 홈 디렉토리에 있는 <filename>.gconf</filename> 디렉토리에 저장됩니다. 사용자가 설정을 변경하면, 새로운 설정 정보가 이 위치에 더해집니다.</para>
                <para><application>설정 편집기</application>를 이용하여 사용자 설정 소스를 수정할 수 있습니다.</para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>기본값</para>
              </entry>
              <entry valign="top">
                <para>이 설정 소스는 기본값 설정들을 포함합니다.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </informaltable>
      <para>경로 파일 내의 설정 소스의 순서는 필수 설정값이 사용자 설정보다 우선하도록 보장합니다. 또한 사용자 설정이 기본값 설정보다 우선적으로 적용되도록 보장합니다. 이것은 <application>GConf</application>가 다음과 같은 우선 순위를 가지고 설정을 적용하는 것을 의미합니다:</para>
      <orderedlist>
        <listitem>
          <para>필수 설정</para>
        </listitem>
        <listitem>
          <para>사용자 지정 설정</para>
        </listitem>
        <listitem>
          <para>기본값 설정</para>
        </listitem>
      </orderedlist>
      <para><application>GConf</application> 경로 파일 내의 <systemitem>include</systemitem> 명령은 시스템 관리자가 다른 설정 소스를 지정할 수 있도록 해 줍니다.</para>
      <informaltable frame="topbot">
        <tgroup cols="2" colsep="0" rowsep="0">
          <colspec colwidth="50*"/>
          <colspec colwidth="50*"/>
          <thead>
            <row rowsep="1">
              <entry>
                <para>포함된 설정 소스</para>
              </entry>
              <entry>
                <para>설명</para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry valign="top">
                <para>
                  <filename>/etc/gconf/2/local-mandatory.path</filename>
                </para>
              </entry>
              <entry valign="top">
                <para>이 설정 소스는 특정 시스템을 위한 필수 설정값을 저장하는 데 사용됩니다.</para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>
                  <filename>$(HOME)/.gconf.path</filename>
                </para>
              </entry>
              <entry valign="top">
                <para>사용자의 홈 디렉토리 내의 <filename>.gconf.path</filename> 파일 내에 설정 소스의 위치를 지정합니다.</para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>
                  <filename>/etc/gconf/2/local-defaults.path</filename>
                </para>
              </entry>
              <entry valign="top">
                <para>이 설정 소스는 특정 시스템을 위한 기본 설정값을 저장하는 데 사용됩니다.</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </informaltable>
    </sect2>
    <sect2 id="gconf-27">
      <title>GConf 스키마</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>스키마</secondary>
      </indexterm>
      <indexterm>
        <primary>GConf</primary>
        <secondary>스키마 키</secondary>
      </indexterm>
      <indexterm>
        <primary>GConf</primary>
        <secondary>스키마 객체</secondary>
      </indexterm>
      <indexterm>
        <primary>스키마</primary>
        <secondary>설명</secondary>
      </indexterm>
      <indexterm>
        <primary>스키마</primary>
        <secondary>스키마 키</secondary>
      </indexterm>
      <indexterm>
        <primary>스키마</primary>
        <secondary>스키마 객체</secondary>
      </indexterm>
      <para><firstterm>GConf 스키마</firstterm>는 <firstterm>GConf 스키마 키</firstterm>와 <firstterm>GConf 스키마 객체</firstterm>를 합쳐서 부르는 말입니다. 아래의 표는 스키마 키 및 스키마 객체와 함께 이러한 항목들과 설정 키와의 관계를 설명합니다:</para>
      <informaltable frame="topbot">
        <tgroup cols="2" colsep="0" rowsep="0">
          <colspec colname="colspec0" colwidth="24.31*"/>
          <colspec colname="colspec1" colwidth="75.69*"/>
          <thead>
            <row rowsep="1">
              <entry>
                <para>항목</para>
              </entry>
              <entry>
                <para>설명</para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry colname="colspec0" valign="top">
                <para>설정 키</para>
              </entry>
              <entry colname="colspec1" valign="top">
                <para>프로그램의 설정 항목에 대응하는 <application>GConf</application> 저장소 내의 요소.</para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>스키마 키</para>
              </entry>
              <entry valign="top">
                <para>설정 키에 대한 스키마 객체를 저장하는 키.</para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>스키마 객체</para>
              </entry>
              <entry valign="top">
                <para>설정 키에 대한 정보를 포함하는 설정 소스 내의 요소. 다음과 같은 정보로 구성됩니다:</para>
                <itemizedlist>
                  <listitem>
                    <para>설정 키를 이용하는 프로그램의 이름.</para>
                  </listitem>
                  <listitem>
                    <para>설정 키의 값 형식. 예를 들면 정수, 참/거짓 등.</para>
                  </listitem>
                  <listitem>
                    <para>설정 키에 대한 기본 값.</para>
                  </listitem>
                  <listitem>
                    <para>설정 키에 대한 간단한 설명.</para>
                  </listitem>
                </itemizedlist>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </informaltable>
      <para>아래의 표는 설정 키, 스키마 키, 스키마 객체에 대한 예제입니다:</para>
      <informaltable frame="topbot">
        <tgroup cols="2" colsep="0" rowsep="0">
          <colspec colname="colspec0" colwidth="24.31*"/>
          <colspec colname="colspec1" colwidth="75.69*"/>
          <thead>
            <row rowsep="1">
              <entry>
                <para>항목</para>
              </entry>
              <entry>
                <para>예</para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry colname="colspec0" valign="top">
                <para>설정 키</para>
              </entry>
              <entry colname="colspec1" valign="top">
                <para>
                  <systemitem>/desktop/gnome/interface/font_name</systemitem>
                </para>
              </entry>
            </row>
            <row>
              <entry colname="colspec0" valign="top">
                <para>스키마 키</para>
              </entry>
              <entry colname="colspec1" valign="top">
                <para>
                  <systemitem>/schemas/desktop/gnome/interface/font_name</systemitem>
                </para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>스키마 객체</para>
              </entry>
              <entry valign="top">
                <programlisting><![CDATA[<schema>
  <applyto>/desktop/gnome/interface/font_name</applyto>
  <key>/schemas/desktop/gnome/interface/font_name</key>
  <owner>gnome</owner>
  <type>string</type>
  <default>Sans 10</default>
  <locale name="C">
    <short>Default font</short>
      <long>Name of the default font used by gtk+.</long>
  </locale>
</schema>]]></programlisting>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </informaltable>
      <para>스키마 키를 설정 키와 연관지을 수 있습니다. 예를 들어 <systemitem>/desktop/gnome/interface/font_name</systemitem> 키는 다음과 같은 스키마 키를 포함합니다:</para>
      <programlisting><![CDATA[<entry name="font_name" mtime="1034873859"
schema="/schemas/desktop/gnome/interface/font_name"/>]]></programlisting>
      <para>스키마 키를 설정 키와 연관시킬 때, 설정값은 스키마 키의 스키마 객체에 지정하는 추천 값을 사용합니다. 이 값은 스키마 객체 내의 <sgmltag>&lt;default&gt;</sgmltag> 엘리먼트에 포함되어 있습니다. 기본적으로 기본 설정 소스 내의 모든 설정 키들은 스키마 키와 연관되어 있습니다.</para>
      <para>일반적으로 스키마들은 기본값 설정 소스 내에 저장됩니다.</para>
    </sect2>
    <sect2 id="gconf-2">
      <title>GConf 스키마 정의 파일</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>스키마 정의 파일</secondary>
        <tertiary>개요</tertiary>
      </indexterm>
      <indexterm>
        <primary>스키마</primary>
        <secondary>스키마 정의 파일</secondary>
        <tertiary>개요</tertiary>
      </indexterm>
      <para>스키마는 <firstterm>스키마 정의 파일</firstterm>에서 생성됩니다. 스키마 정의 파일은 특정 프로그램 내의 모든 키에 대한 특성을 정의합니다. 스키마 정의 파일의 확장자는 <filename>.schemas</filename> 입니다.</para>
      <para>스키마 정의 파일은 <filename>/etc/gconf/schemas</filename> 디렉토리 내에 포함됩니다. 스키마 정의 파일을 이용하여 새로운 설정 소스를 만들 수 있습니다.</para>
      <para>어떤 정의 파일들은 그놈 데스크탑 사용자 인터페이스와 밀접하게 관련되어 있습니다. 예를 들어, <filename>system_http_proxy.schemas</filename> 파일은 <application>네트워크 프록시</application> 프로그램과 관련이 있습니다. 다른 스키마 정의 파일들은 그놈 데스크탑 사용자 인터페이스에 포함되지 않은 설정 키들을 포함하고 있습니다. 예를 들면 <systemitem>/apps/panel/global/tootips_enabled</systemitem> 키는 사용자 인터페이스에는 나타나지 않습니다.</para>
      <para>그놈 데스크탑 사용자 인터페이스 중 일부는 하나 이상의 스키마 정의 파일에 포함된 설정 키들을 나타내는 설정을 포함하고 있습니다. 예를 들어, <application>키보드 단축키</application> 설정 도구는 <filename>panel-global-config.schemas</filename> 파일과 <filename>metacity.schemas</filename> 파일에 나타난 설정 키에 해당하는 설정을 포함합니다.</para>
    </sect2>
  </sect1>
  <sect1 id="gconf-25">
    <title>GConf 데몬</title>
    <indexterm>
      <primary>gconfd</primary>
      <see>GConf 데몬</see>
    </indexterm>
    <indexterm>
      <primary>GConf</primary>
      <secondary>데몬</secondary>
    </indexterm>
    <para> <application>GConf</application> 데몬은 <command>gconfd-2</command>입니다. <application>GConf</application> 데몬은 설정값이 변경된 경우 이를 프로그램에게 알립니다. 예를 들어 <application>메뉴와 도구 모음</application> 설정 도구에서 도구 모음이 아이콘 만을 표시하도록 변경할 수 있습니다. 설정 도구에서 이 옵션을 선택하면, 실행 중인 모든 프로그램들의 도구 모음이 즉시 업데이트될 것입니다. <application>GConf</application> 데몬은 로컬이나 네트워크 상에서 동작할 수 있습니다.</para>
    <para><application>GConf</application> 데몬은 각 사용자에 대해 별도로 실행됩니다. <application>GConf</application> 데몬은 인증이나 데이터 보안과 같은 복잡한 문제를 처리해서는 안 됩니다. <application>GConf</application> 데몬이 시작되면 <application>GConf</application> 경로 파일을 읽습니다. <application>GConf</application> 데몬은 프로그램과 설정 소스 간의 모든 접근을 관리합니다.</para>
    <para>프로그램에서 특정 설정 키에 대한 값을 요청하면, 데몬은 다음과 같이 설정 소스를 찾습니다:</para>
    <orderedlist>
      <listitem>
        <para>경로 파일에 지정된 순서에 따라 각 설정 소스 내에서 설정 키의 값을 찾습니다. 만약 값을 찾으면 이를 반환합니다.</para>
      </listitem>
      <listitem>
        <para>값을 찾지 못했다면, 경로 파일에 지정된 순서에 따라 각 설정 소스 내의 설정 키와 연관된 스키마 키를 찾습니다.</para>
      </listitem>
      <listitem>
        <para>스키마 키를 찾았다면 해당 키에 대한 값을 점검합니다.</para>
      </listitem>
      <listitem>
        <para>만약 스키마 키의 값이 스키마 객체라면, 해당 객체의 <sgmltag>&lt;default&gt;</sgmltag> 엘리먼트 내의 추천 값을 반환합니다.</para>
      </listitem>
    </orderedlist>
    <para><application>GConf</application> 데몬은 설정 키의 값을 캐시에 저장합니다. 모든 프로그램은 이 캐시를 이용하기 때문에, 특정 설정 소스에는 단 한 번만 접근하게 됩니다.</para>
    <para><application>GConf</application> 데몬을 종료시키려면 다음 명령을 실행합니다:</para>
    <screen><userinput>gconftool-2 --shutdown</userinput></screen>
  </sect1>
  <sect1 id="gconf-6">
    <title>GConf 명령행 도구</title>
    <anchor id="gconf-TBL-7"/>
    <indexterm>
      <primary>gconftool-2</primary>
      <see>GConf 명령행 도구</see>
    </indexterm>
    <indexterm>
      <primary>GConf</primary>
      <secondary>명령행 도구</secondary>
    </indexterm>
    <para><application>GConf</application>는 <command>gconftool-2</command>라는 명령행 도구를 포함합니다. <command>gconftool-2</command> 명령을 이용하여 다음과 같은 작업을 수행할 수 있습니다:</para>
    <itemizedlist>
      <listitem>
        <para>키의 값을 설정합니다.</para>
      </listitem>
      <listitem>
        <para>키의 값을 표시합니다.</para>
      </listitem>
      <listitem>
        <para>프로그램을 설치했을 때 스키마 정의 파일에서 스키마를 설치합니다.</para>
      </listitem>
    </itemizedlist>
    <para>예를 들어 다음 명령을 이용하여 <systemitem>/desktop/gnome</systemitem> 디렉토리와 그 하위 디렉토리 내의 모든 키들의 값을 표시할 수 있습니다.</para>
    <screen><userinput>gconftool-2 --recursive-list /desktop/gnome</userinput></screen>
    <para>다음은 <command>gconftool-2</command> 명령과 함께 사용할 수 있는 몇몇 옵션들의 목록입니다. 명령행 옵션에 대한 자세한 설명은 <ulink url="man:gconftool-2(1)">man:gconftool-2(1)</ulink> 부분을 보기 바랍니다.</para>
    <variablelist>
      <title>gconftool-2 명령 옵션</title>
      <varlistentry>
        <term>
            <option>--all-dirs</option>
        </term>
        <listitem>
          <para>지정한 디렉토리 내의 모든 하위 디렉토리 모록을 표시합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--all-entries</option>
        </term>
        <listitem>
          <para>지정한 디렉토리 내의 모든 키들의 값을 표시합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--config-source=<replaceable>설정 소스</replaceable></option>
        </term>
        <listitem>
          <para>이 옵션은 <option>--direct</option> 옵션과 함께 사용하여 사용자 설정 소스를 지정합니다. 만약 설정 소스를 지정하지 않았다면, 해당 명령은 경로 파일 내의 모든 설정 소스에 적용될 것입니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--direct</option>
        </term>
        <listitem>
          <para>이 옵션은 <option>--config-source</option> 옵션과 함께 사용하여 설정 소스에 직접 접근합니다. 이 옵션을 이용하면, <application>GConf</application>는 서버를 건너 뛸 것입니다. 이 옵션을 사용하기 전에 <application>GConf</application> 데몬인 <command>gconfd-2</command>가 실행되지 않도록 해 주십시오.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--dump</option>
        </term>
        <listitem>
          <para>지정한 <application>GConf</application> 저장소 디렉토리 내의 모든 설정 키의 목록을 만듭니다. 이 목록은 모든 키들의 XML 설명을 포함합니다. 목록은 <sgmltag>&lt;gconfentryfile&gt;</sgmltag> 엘리먼트 내에 포함되어 있습니다.</para>
          <para>예를 들어 이 옵션의 출력을 재지정(redirect)하면 여러분의 패널 설정에 관련된 모든 키들의 목록을 포함하는 파일을 생성할 수 있습니다. 이렇게 생성된 파일은 <option>--load</option> 옵션과 함께 사용할 수 있습니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--get</option>
        </term>
        <listitem>
          <para>지정한 설정 키의 값을 표시합니다. 또한 지정한 스키마 키에 대한 스키마 객체 내의 엘리먼트들의 값들도 함께 표시합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--help</option>
        </term>
        <listitem>
          <para><command>gconftool-2</command> 명령과 이와 함께 사용할 수 있는 옵션에 대한 도움말을 보여줍니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--load=<replaceable>파일 이름</replaceable></option>
        </term>
        <listitem>
          <para>이 옵션을 이용하면 설정 소스 내의 현재 디렉토리에 있는 설정 키에 대한 값을 지정한 파일 내의 값들로 설정합니다. 지정한 파일은 <literal>&lt;gconfentryfile&gt;</literal> 엘리먼트 내의 키에 대한 XML 설명을 반드시 포함해야 합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--long-desc=<replaceable>설명</replaceable></option>
        </term>
        <listitem>
          <para>이 옵션과 함께 <option>--set-schema</option> 옵션을 이용하여 스키마 키에 대한 긴 설명을 설정합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--makefile-install-rule</option>
        </term>
        <listitem>
          <para>프로그램에 스키마 정의 파일을 설치합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--owner=<replaceable>소유자</replaceable></option>
        </term>
        <listitem>
          <para>이 옵션과 함께 <option>--set-schema</option> 옵션을 이용하여 스키마 키의 소유자를 설정합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--recursive-list</option>
        </term>
        <listitem>
          <para>지정한 디렉토리 내의 모든 하위 디렉토리에 존재하는 모든 설정 키들의 값을 표시합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--recursive-unset</option>
        </term>
        <listitem>
          <para>사용자 설정 소스와 기본값 설정 소스 내의 지정한 디렉토리에 있는 모든 하위 디렉토리 내의 설정 키들의 값을 초기화 시킵니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--set</option>
        </term>
        <listitem>
          <para>설정 키의 값을 설정하고 사용자 설정 소스에 값을 기록합니다. <option>--type</option> 옵션과 함께 사용하여 설정하고 싶은 값의 데이터 형식을 지정합니다. 예를 들어 다음 명령은 사용자 설정 소스 내의 <systemitem>/apps/gnome-terminal/profiles/Default/background_color</systemitem> 키의 값을 설정합니다:</para>
          <screen><userinput>gconftool-2 \
  --set "/apps/gnome-terminal/profiles/Default/background_color" \
  --type string "#000000"</userinput></screen>
          <para>또한 <option>-direct</option> 옵션이나 <option>--config-source</option> 옵션과 함께 사용하여 설정값을 다른 설정 소스에 기록하도록 할 수 있습니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--set-schema</option>
        </term>
        <listitem>
          <para>스키마 키 내의 속성의 값을 설정하고, 값을 기본값 설정 소스에 기록합니다.</para>
          <para>다음 옵션들과 함께 사용하여 변경하고 싶은 속성을 지정할 수 있습니다:</para>
          <itemizedlist>
            <listitem>
              <para>
                <option>--type</option>
              </para>
            </listitem>
            <listitem>
              <para>
                <option>--short-desc</option>
              </para>
            </listitem>
            <listitem>
              <para>
                <option>--long-desc</option>
              </para>
            </listitem>
            <listitem>
              <para>
                <option>--owner</option>
              </para>
            </listitem>
          </itemizedlist>
          <para>예를 들어 다음 명령은 <systemitem>/apps/gnome-terminal/profiles/Default/background_color</systemitem> 키에 대한 스키마 키의 짧은 설명을 설정합니다:</para>
          <screen><userinput>gconftool-2 \
  --set-schema  "/schemas/apps/gnome-terminal/profiles/Default/background_color" \
  --short-desc "터미널의 기본 배경 색상"</userinput></screen>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--short-desc=<replaceable>설명</replaceable></option>
        </term>
        <listitem>
          <para>이 옵션은 <option>--set-schema</option> 옵션과 함께 사용하여 스키마 키에 대한 짧은 설명을 지정합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--shutdown</option>
        </term>
        <listitem>
          <para><application>GConf</application> 데몬을 종료합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--type=<replaceable>데이터 형식</replaceable></option>
        </term>
        <listitem>
          <para>이 옵션을 사용하여 설정 키의 값에 대한 데이터 형식을 지정합니다. 또한 스키마 키 내의 속성 값을 설정할 때도 이 옵션을 사용할 수 있습니다. 아래는 올바른 데이터 형식의 목록입니다:</para>
          <itemizedlist>
            <listitem>
              <para>
                <type>bool</type>
              </para>
            </listitem>
            <listitem>
              <para>
                <type>float</type>
              </para>
            </listitem>
            <listitem>
              <para>
                <type>int</type>
              </para>
            </listitem>
            <listitem>
              <para>
                <type>list</type>
              </para>
            </listitem>
            <listitem>
              <para>
                <type>pair</type>
              </para>
            </listitem>
            <listitem>
              <para>
                <type>string</type>
              </para>
            </listitem>
          </itemizedlist>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--unset</option>
        </term>
        <listitem>
          <para>사용자 설정 소스와 기본값 설정 소스 내의 설정 키의 값을 초기화 합니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>
            <option>--usage</option>
        </term>
        <listitem>
          <para><command>gconftool-2</command> 명령과 이와 함께 사용할 수 있는 옵션에 대한 간략한 도움말을 보여줍니다.</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </sect1>
  <sect1 id="gconf-7">
    <title>설정값을 변경하는 방법</title>
    <indexterm>
      <primary>GConf</primary>
      <secondary>설정값, 설정</secondary>
    </indexterm>
    <indexterm>
      <primary>설정값</primary>
      <secondary>GConf로 설정하기</secondary>
    </indexterm>
    <para>여러분은 설정 키에 대한 필수값이나 기본값을 설정해 둘 수 있습니다. 사용자를 위한 필수 설정값이나 기본 설정값을 바꾸기 전에 어떤 사용자가 <application>GConf</application> 데몬을 이용하고 있지는 않은지 확인해야 합니다. 설정값을 바꾸기 전에 모든 사용자들이 로그아웃하도록 하십시오.</para>
    <para><command>gconftool-2</command> 명령을 사용하여 설정 키에 대한 필수값이나 기본값을 설정하는 방법은 다음과 같습니다:</para>
    <screen><userinput>gconftool-2 --direct \
  --config-source <replaceable>설정 소스</replaceable> \
  --type <replaceable>데이터 형식</replaceable> \
  --set <replaceable>설정 키</replaceable> <replaceable>값</replaceable></userinput></screen>
    <para>예를 들어 <literal>wwwproxy.xyz.com</literal>을 필수 HTTP 프록시 호스트로 설정하려면 다음 명령을 실행합니다:</para>
    <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type string \
  --set /system/http_proxy/host wwwproxy.xyz.com</userinput></screen>
    <para>사용자는 이 설정값을 변경할 수 없습니다.</para>
    <para><command>gconftool-2</command> 명령을 이용하여 기본값을 설정할 수도 있습니다. 예를 들어 작업 공간의 기본 개수를 5로 설정하고 싶다면, 다음 명령을 실행합니다:</para>
    <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type int \
  --set /apps/metacity/general/num_workspaces 5</userinput></screen>
    <para>사용자는 이 설정값을 변경할 수 있습니다.</para>
    <caution>
      <para>사용자에 대한 필수 설정값이나 기본 설정값을 바꾸기 전에, 반드시 모든 사용자들이 로그아웃 하였는 지 확인하십시오.</para>
    </caution>
  </sect1>
  <sect1 id="gconf-8">
    <title>일반 환경 설정</title>
    <para>이 부분에서는 일반적인 설정에 대한 필수값이나 기본값을 할당하는 방법을 설명합니다.</para>
    <sect2 id="gconf-10">
      <title>HTTP 프록시 설정 방법</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>HTTP 프록시, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>HTTP 프록시</primary>
        <secondary>GConf로 설정하기</secondary>
      </indexterm>
      <para>HTTP 프록시 설정을 변경하려면 <systemitem>/system/http_proxy/</systemitem> 위치 내의 설정 키의 값을 수정해야 합니다. 예를 들어 HTTP 프록시 호스트의 필수값을 설정하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type string \
  --set /system/http_proxy/host <replaceable>프록시 이름</replaceable></userinput></screen>
      <para>HTTP 프록시의 기본값을 설정하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type string \
  --set /system/http_proxy/host <replaceable>프록시 이름</replaceable></userinput></screen>
      <para>HTTP 프록시에 관련된 다른 설정들도 변경할 수 있습니다. 다른 HTTP 프록시 설정값들에 대한 정보는 <filename>system_http_proxy.schemas</filename> 스키마 정의 파일을 보기 바랍니다.</para>
    </sect2>
    <sect2 id="gconf-11">
      <title>인쇄 관리자 설정 방법</title>
      <para>인쇄 관리자의 설정을 변경하려면, <systemitem>/apps/gnome-print-manager</systemitem> 위치 내의 설정 키의 값을 수정해야 합니다. 예를 들어 사용자들이 다른 사용자의 인쇄 작업을 보지 못하도록 하려면 다음과 같이 필수값을 설정합니다:</para>
      <indexterm>
        <primary>GConf</primary>
        <secondary>인쇄 관리자, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>인쇄 관리자</primary>
        <secondary>GConf로 설정하기</secondary>
      </indexterm>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type bool \
  --set /apps/gnome-print-manager/show_all_jobs false</userinput></screen>
      <para>이 설정의 기본값을 변경하려면, 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type bool \
  --set /apps/gnome-print-manager/show_all_jobs false</userinput></screen>
      <para>인쇄 관리자와 관련된 다른 설정들도 변경할 수 있습니다. 다른 인쇄 관리자 설정값들에 대한 정보는 <filename>gnome-print-manager.schemas</filename> 스키마 정의 파일을 보기 바랍니다.</para>
<!--gnome-print-manager isn't in Mercury. Is there a replacement?-->
    </sect2>
    <sect2 id="gconf-12">
      <title>작업 공간 갯수 설정 방법</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>작업 공간 갯수, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>작업 공간</primary>
        <secondary>GConf로 숫자 설정하기</secondary>
      </indexterm>
      <para>작업 공간의 갯수의 필수값을 변경하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type int \
  --set /apps/metacity/general/num_workspaces <replaceable>정수</replaceable></userinput></screen>
      <para>작업 공간 갯수의 기본값을 변경하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type int \
  --set /apps/metacity/general/num_workspaces <replaceable>정수</replaceable></userinput></screen>
      <para>창 관리자에 관련된 다른 설정들도 변경할 수 있습니다. 다른 창 관리자 설정값들에 대한 정보는 <filename>metacity.schemas</filename> 스키마 정의 파일을 보기 바랍니다.</para>
    </sect2>
    <sect2 id="gconf-16">
      <title>키보드 접근성 설정 방법</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>키보드 접근성, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>키보드</primary>
        <secondary>GConf로 접근성 기능 설정하기</secondary>
      </indexterm>
      <para>키보드 접근성 설정을 변경하려면 <systemitem>/desktop/gnome/accessibility/keyboard</systemitem> 위치에 있는 설정 키의 값을 수정해야 합니다. 예를 들어 키보드 접근성 기능을 사용하도록 필수값을 설정하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type bool \
  --set /desktop/gnome/accessibility/keyboard/enable true</userinput></screen>
      <para>이 설정의 기본값을 변경하려면, 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type bool \
  --set /desktop/gnome/accessibility/keyboard/enable false</userinput></screen>
      <para>키보드 접근성 기능에 관련된 다른 설정들도 변경할 수 있습니다. 다른 키보드 접근성 기능 설정값들에 대한 정보는 <filename>desktop_gnome_accessibility_keyboard.schemas</filename> 스키마 정의 파일을 보기 바랍니다.</para>
    </sect2>
    <sect2 id="gconf-18">
      <title>키보드 단축키 설정 방법</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>키보드 단축키, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>키보드</primary>
        <secondary>GConf로 단축키 설정하기</secondary>
      </indexterm>
      <para>키보드 단축 설정을 변경하려면, <systemitem>/apps/metacity/global_keybindings</systemitem> 위치 내의 설정 키의 값을 수정해야 합니다. 예를 들어 사용자들이 <keycombo><keycap>Alt</keycap><keycap>F3</keycap></keycombo> 단축키로만 <guilabel>프로그램 실행</guilabel> 대화 상자를 열게 하려면 다음 명령을 실행하여 이에 대한 필수값을 설정합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type string \
  --set /apps/metacity/global_keybindings/panel_run_dialog '&lt;Alt&gt;F3'</userinput></screen>
      <para>키보드 단축키에 관련된 다른 설정들도 변경할 수 있습니다. 다른 키보드 단축키 설정값들에 대한 정보는 <filename>metacity.schemas</filename> 스키마 정의 파일을 보기 바랍니다.</para>
    </sect2>
    <sect2 id="gconf-14">
      <title>패널 및 패널 객체 설정 방법</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>패널 객체, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>GConf</primary>
        <secondary>패널 기본 설정, 개별 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>패널</primary>
        <secondary>GConf로 개별 설정하기</secondary>
      </indexterm>
      <para><filename>panel-default-setup.entries</filename> 파일은 그놈 데스크탑 내의 패널에 대한 다음과 같은 정보를 지정합니다:</para>
      <itemizedlist>
        <listitem>
          <para>패널의 갯수.</para>
        </listitem>
        <listitem>
          <para>패널의 형식.</para>
        </listitem>
        <listitem>
          <para>패널의 속성.</para>
        </listitem>
        <listitem>
          <para>패널의 내용.</para>
        </listitem>
      </itemizedlist>
      <para>각각의 패널과 패널 객체들을 설정하는 것을 복잡한 작업입니다. 개별적인 패널과 패널 객체들을 설정하려면, 먼저 <filename>panel-default-setup.entries</filename> 파일의 구조를 이해해야 합니다. <filename>panel-default-setup.entries</filename> 파일에 대한 자세한 정보는 다음 절을 보기 바랍니다.</para>
      <para>개별적인 패널과 패널 객체를 설정하려면, 많은 설정 소스 내의 많은 설정 값들을 변경해야 합니다. 패널 설정 값을 변경하기 위한 가장 손쉬운 방법은 <command>gconftool-2</command> 명령을 <option>--dump</option> 옵션 및 <option>--load</option> 옵션과 함께 사용하는 것입니다. 패널 및 패널 상의 객체들에 대한 설정을 변경하는 자세한 방법은 <xref linkend="gconf-3"/> 부분을 보기 바랍니다.</para>
      <sect3 id="gconf-23">
        <title>개별 패널 및 패널 객체 지정하는 방법</title>
        <indexterm>
          <primary>GConf</primary>
          <secondary>스키마 정의 파일</secondary>
          <tertiary>패널과 패널 객체</tertiary>
        </indexterm>
        <indexterm>
          <primary>스키마</primary>
          <secondary>스키마 정의 파일</secondary>
          <tertiary>패널과 패널 객체</tertiary>
        </indexterm>
        <para><filename>panel-default-setup.entries</filename> 파일은 패널과 패널 객체들을 지정하는 부분을 포함하고 있습니다. <filename>panel-default-setup.entries</filename> 파일은 스키마 키에 대한 값을 지정합니다. <filename>panel-default-setup.entries</filename> 파일은 <filename>/etc/gconf/schemas</filename> 디렉토리에 있습니다.</para>
        <para><filename>panel-default-setup.entries</filename> 파일은 다음과 같은 구조로 이루어져 있습니다:</para>
        <orderedlist>
          <listitem>
            <para>그놈 데스크탑 내의 패널, 애플릿 및 다른 패널 객체들에 대한 일반적인 구조를 나타내는 키. 다음의 키들은 그놈 데스크탑 내에 나타나는 패널, 패널 객체, 애플릿 등의 갯수를 지정합니다:</para>
            <itemizedlist>
              <listitem>
                <para>
                  <systemitem>/apps/panel/default_setup/general/toplevel_id_list</systemitem>
                </para>
              </listitem>
              <listitem>
                <para>
                  <systemitem>/apps/panel/default_setup/general/object_id_list</systemitem>
                </para>
              </listitem>
              <listitem>
                <para>
                  <systemitem>/apps/panel/default_setup/general/applet_id_list</systemitem>
                </para>
              </listitem>
            </itemizedlist>
            <para>각각의 키들은 또한 각각의 패널, 패널 객체, 애플릿에 대한 ID를 할당합니다. 예를 들어 다음 예제는 <filename>panel-default-setup.entries</filename> 파일에 있는 것으로, 그놈 데스크탑 내에 있는 한 패널을 나타냅니다:</para>
            <programlisting><![CDATA[<entry>
  <key>toplevel_id_list</key>
  <schema_key>/schemas/apps/panel/general/toplevel_id_list</schema_key>
  <value>
    <list type="string">
      <value>
        <string>bottom_panel</string>
      </value>
    </list>
  </value>
</entry>]]></programlisting>
            <para><filename>panel-default-setup.entries</filename> 파일 내의 <systemitem>bottom_panel</systemitem> ID는 아래쪽 가장자리에 있는 패널을 지칭합니다.</para>
          </listitem>
          <listitem>
            <para>패널의 속성을 나타내는 키. 패널 속성 키들은 다음과 같은 구조로 이루어져 있습니다:</para>
            <programlisting>/apps/panel/default_setup/toplevels/<replaceable>패널-이름</replaceable>/<replaceable>패널-속성-키</replaceable></programlisting>
            <para>예를 들어 <systemitem>/apps/panel/default_setup/toplevels/bottom_panel/size</systemitem> 키는 아래쪽 패널의 크기를 지정합니다.</para>
          </listitem>
          <listitem>
            <para>패널 객체, 패널 객체의 속성 및 객체들이 존재하는 패널을 나타내는 키. 예를 들어 다음의 예제는 <filename>panel-default-setup.entries</filename> 파일에 있는 것으로, 아래쪽 패널의 왼쪽 편에 있는 <guimenu>주 메뉴</guimenu> 객체를 나타냅니다:</para>
            <programlisting><![CDATA[<entrylist base="/apps/panel/default_setup/objects/main_menu">
  <entry>
    <key>object_type</key>
    <schema_key>/schemas/apps/panel/objects/object_type</schema_key>
    <value>
      <string>menu-object</string>
    </value>
  </entry>
  <entry>
    <key>toplevel_id</key>
    <schema_key>/schemas/apps/panel/objects/toplevel_id</schema_key>
    <value>
      <string>bottom_panel</string>
    </value>
  </entry>
  <entry>
    <key>position</key>
    <schema_key>/schemas/apps/panel/objects/position</schema_key>
    <value>
      <int>0</int>
    </value>
  </entry>
  <!-- Possibly more entry elements -->
</entrylist>]]></programlisting>
          </listitem>
          <listitem>
            <para>애플릿, 애플릿 속성 및 애플릿이 존재하는 패널을 나타내는 키. 예를 들어 다음의 예제는 <filename>panel-default-setup.entries</filename> 파일에 있는 것으로, 아래쪽 패널에 있는 <application>창 목록</application> 애플릿을 나타냅니다:</para>
            <programlisting><![CDATA[<entrylist base="/apps/panel/default_setup/applets/window_list">
  <entry>
    <key>object_type</key>
    <schema_key>/schemas/apps/panel/objects/object_type</schema_key>
    <value>
      <string>bonobo-applet</string>
    </value>
  </entry>
  <entry>
    <key>toplevel_id</key>
    <schema_key>/schemas/apps/panel/objects/toplevel_id</schema_key>
    <value>
      <string>bottom_panel</string>
    </value>
  </entry>
  <entry>
    <key>position</key>
    <schema_key>/schemas/apps/panel/objects/position</schema_key>
    <value>
      <int>2</int>
    </value>
  </entry>
  <!-- Possibly more entry elements -->
  <entry>
    <key>bonobo_iid</key>
    <schema_key>/schemas/apps/panel/objects/bonobo_iid_type</schema_key>
    <value>
      <string>OAFIID:GNOME_WindowListApplet</string>
    </value>
  </entry>
</entrylist>]]></programlisting>
            <para>OAFIID는 애플릿에 대한 고유 ID입니다. 특정 애플릿에 대한 OAFIID를 찾으려면 <filename>/usr/lib/bonobo/servers</filename> 디렉토리 내의 <filename>.server</filename> 파일을 보기 바랍니다. 예를 들어 다음 예제는 <filename>GNOME_Wncklet_Factory.server</filename> 파일에서 가져온 것으로 <application>Window List</application> 애플릿의 OAFIID를 보여줍니다:</para>
            <programlisting><![CDATA[<oaf_server iid="OAFIID:GNOME_WindowListApplet" 
type="factory" location="OAFIID:GNOME_Wncklet_Factory">]]></programlisting>
          </listitem>
        </orderedlist>
      </sect3>
      <sect3 id="gconf-3">
        <title>개별 패널 및 패널 객체 설정 변경하는 방법</title>
        <para>패널과 패널 상의 객체들을 설정하려면 다음과 같은 절차를 수행합니다:</para>
        <orderedlist>
          <listitem>
            <para>그놈 세션으로 로그인하고, 적절히 패널을 설정합니다.</para>
          </listitem>
          <listitem>
            <para><command>gconftool-2</command> 명령행 도구를 <option>--dump</option> 옵션과 함께 사용하여 여러분의 패널 설정에 대한 XML 설명을 포함하는 파일을 만듭니다. <option>--dump</option> 옵션은 지정한 <application>GConf</application> 저장소 디렉토리 내의 모든 설정 키에 대한 목록을 만들어 냅니다.</para>
            <para>예를 들어 다음 명령은 기본 패널 설정에 대한 XML 설명을 포함하는 <filename>my-panel-setup.entries</filename> 파일을 만듭니다:</para>
            <screen><userinput>gconftool-2 --dump /apps/panel &gt; my-panel-setup.entries</userinput></screen>
          </listitem>
          <listitem>
            <para>텍스트 편집기로 <filename>my-panel-setup.entries</filename> 파일을 열고, 원하는 대로 파일을 수정합니다.</para>
            <para>예를 들어 데스크탑 엔트리 파일의 위치를 바꾸는 경우를 살펴보겠습니다. 다음은 <option>--dump</option> 옵션을 사용해 만들어진 파일의 일부입니다:</para>
            <programlisting><![CDATA[<entry>
  <key>objects/object_16/launcher_location</key>
  <schema_key>/schemas/apps/panel/objects/launcher_location</schema_key>
  <value>
    <string>hadjaha-00adce02f7.desktop</string>
  </value>
</entry>]]></programlisting>
            <para>위의 예제에서, <filename>hadjaha-00adce02f7.desktop</filename> 파일에 대한 참조를 어디서나 이용가능한 다른 데스크탑 엔트리 파일로 변경할 수 있습니다.</para>
            <para><option>--dump</option> 옵션을 사용해 패널 설정을 만들어 냈을 때는, 패널 객체들의 위치는 절대 위치가 됩니다. 이러한 패널 객체들의 위치를 절대 위치에서 상대 위치로 바꾸고 싶을 수도 있습니다. 이 경우 패널의 가장 왼쪽에 있는 객체의 <systemitem>위치</systemitem> 값은 <literal>0</literal>이 되고, 그 다음 객체의 <systemitem>위치</systemitem> 값은 <literal>1</literal>이 되는 식입니다. 만약 객체의 위치가 패널의 오른쪽부터 상대적인 값을 갖게 하려면, <systemitem>right_stick</systemitem> 키의 값을 <literal>true</literal>로 설정하십시오.</para>
<!--Give full key name for position.-->
          </listitem>
          <listitem>
            <para><command>gconftool-2</command> 명령행 도구를 <option>--load</option> 옵션과 함께 사용하여 <filename>my-panel-setup.entries</filename> 파일 내의 값들을 기본값 설정 소스의 값들로 설정합니다. 예를 들어 다음 명령은 기본값 설정 소스 내의 값들로 <filename>my-panel-setup.entries</filename> 내의 해당 키의 값들을 설정합니다:</para>
            <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --load my-panel-setup.entries</userinput></screen>
          </listitem>
        </orderedlist>
      </sect3>
    </sect2>
  </sect1>
  <sect1 id="gconf-9">
    <title>모양새 설정 방법</title>
    <para>이 부분에서는 모양새에 관련된 설정의 필수값과 기본값을 설정하는 방법을 설명합니다.</para>
    <sect2 id="gconf-19">
      <title>글꼴 설정 변경하기</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>글꼴, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>글꼴</primary>
        <secondary>GConf로 설정하기</secondary>
      </indexterm>
      <para>글꼴 설정을 변경하려면, 다음 두 개의 설정 키의 값을 수정합니다. 아래의 표는 수정해야 할 키들과, 이에 관련된 사용자 인터페이스 부분을 보여줍니다:</para>
      <informaltable frame="topbot">
        <tgroup cols="2" colsep="0" rowsep="0">
          <colspec colwidth="50*"/>
          <colspec colwidth="50*"/>
          <thead>
            <row rowsep="1">
              <entry>
                <para>GConf 위치</para>
              </entry>
              <entry>
                <para>사용자 인터페이스 요소</para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry valign="top">
                <para>/desktop/gnome/interface/font_name</para>
              </entry>
              <entry valign="top">
                <para><application>글꼴</application> 설정 도구, <guilabel>응용프로그램 글꼴</guilabel> 옵션</para>
              </entry>
            </row>
            <row>
              <entry valign="top">
                <para>/apps/nautilus/preferences/desktop_font</para>
              </entry>
              <entry valign="top">
                <para><application>글꼴</application> 설정 도구, <guilabel>바탕 화면 글꼴</guilabel> 옵션</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </informaltable>
      <para>예를 들어 <literal>Sans 12</literal> 글꼴을 필수 응용프로그램 글꼴로 설정하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type string \
  --set /desktop/gnome/interface/font_name "Sans 12"</userinput></screen>
      <para><indexterm><primary>바탕 화면</primary><secondary> 글꼴 설정, GConf로 설정하기</secondary></indexterm><literal>palatino 12</literal> 글꼴을 바탕 화면 객체의 기본 글꼴로 설정하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type string \
  --set /apps/nautilus/preferences/desktop_font "palatino 12"</userinput></screen>
    </sect2>
    <sect2 id="gconf-20">
      <title>바탕 화면 설정하기</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>배경, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>배경, 바탕 화면</primary>
        <secondary>설정, GConf로 설정하기</secondary>
      </indexterm>
      <para>바탕 화면 그림의 설정을 변경하려면 <systemitem>/desktop/gnome/background</systemitem> 위치 내의 설정 키의 값들을 수정합니다. 예를 들어 배경 그림의 이미지의 필수값을 설정하려면 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type string \
  --set /desktop/gnome/background/picture_filename <replaceable>파일-이름.png</replaceable></userinput></screen>
      <para>이 설정의 기본값을 변경하려면, 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type string \
  --set /desktop/gnome/background/picture_filename <replaceable>파일-이름.png</replaceable></userinput></screen>
      <para>바탕 화면에 관련된 다른 설정들도 변경할 수 있습니다. 다른 바탕 화면 단축키 설정값들에 대한 정보는 <filename>desktop_gnome_background.schemas</filename> 스키마 정의 파일을 보기 바랍니다.</para>
    </sect2>
    <sect2 id="gconf-21">
      <title>스플래시 이미지 설정하기</title>
      <indexterm>
        <primary>GConf</primary>
        <secondary>스플래시 이미지, 설정</secondary>
      </indexterm>
      <indexterm>
        <primary>스플래시 이미지</primary>
        <secondary>이미지, GConf로 설정하기</secondary>
      </indexterm>
      <para>스플래시 이미지 설정을 변경하려면 <systemitem>/apps/gnome-session/options/</systemitem> 위치 내의 설정 키의 값들을 수정합니다. 예를 들어 사용자들에게 스플래시 이미지를 보여주지 않으려면 다음과 같이 필수값을 설정합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
  --type bool \
  --set /apps/gnome-session/options/show_splash_screen false</userinput></screen>
      <para>이 설정의 기본값을 변경하려면, 다음 명령을 실행합니다:</para>
      <screen><userinput>gconftool-2 --direct \
  --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  --type bool \
  --set /apps/gnome-session/options/show_splash_screen false</userinput></screen>
      <para>스플래시 이미지에 관련된 다른 설정들도 변경할 수 있습니다. 다른 스플래시 이미지 설정값들에 대한 정보는 <filename>gnome-session.schemas</filename> 스키마 정의 파일을 보기 바랍니다.</para>
    </sect2>
  </sect1>
  <sect1 id="gconf-28">
    <title>기본 설정값으로 복원하는 방법</title>
    <indexterm>
      <primary>GConf</primary>
      <secondary>기본 설정값으로 복구하기</secondary>
    </indexterm>
    <indexterm>
      <primary>설정값</primary>
      <secondary>GConf로 기본값 복구하기</secondary>
    </indexterm>
    <para>특정 사용자에 대한 기본 설정값을 복구하려면 다음 명령을 실행합니다:</para>
    <screen><userinput>gconftool-2 --direct \
  --config-source <replaceable>사용자-설정-소스</replaceable> \
  --recursive-unset</userinput></screen>
    <para><replaceable>사용자-설정-소스</replaceable> 부분을 사용자의 홈 디렉토리 내의 <filename>.gconf</filename> 디렉토리에 있는 설정 소스로 대체하십시오.</para>
    <para>이 명령은 사용자 설정 소스와 기본값 설정 소스 내의 모든 하위 디렉토리에 있는 모든 설정 키들의 값을 초기화합니다.</para>
  </sect1>
</chapter>


<chapter id="menustructure-0">
  <title>메뉴 설정하기</title>

  <anchor id="menustructure-22"/>

  <anchor id="menustructure-TBL-12"/>

  <anchor id="menustructure-TBL-17"/>

  <highlights>
    <para>이 부분에서는 그놈 데스크탑에서 메뉴를 구현하는 방법과 이를 적절히 설정하는 방법에 대해 설명합니다.</para>
  </highlights>

  <sect1 id="menustructure-1">
    <title>개요</title>

    <indexterm>
      <primary>메뉴</primary>

      <secondary>개요</secondary>
    </indexterm>

    <para>그놈 데스크탑은 <ulink url="http://www.freedesktop.org/wiki/Standards/menu-spec">XDG 메뉴 명세서</ulink>에 따라 메뉴를 구현합니다. 이 명세서에 따라 그놈 데스크탑은 다음과 같은 기능을 제공합니다:</para>

    <itemizedlist>
      <listitem>
        <para>메뉴의 구조를 쉽게 조정할 수 있습니다. 메뉴의 계층 구조를 조정하기 위해서는 소수의 파일 만을 편집하면 되며, 프로그램이나 파일을 직접 수정하거나 이동할 필요가 없습니다.</para>
      </listitem>

      <listitem>
        <para>프로그램을 쉽게 설치할 수 있습니다. 프로그램을 설치할 때 메뉴의 구조에 대한 정보를 제공할 필요가 없습니다.</para>
      </listitem>

      <listitem>
        <para>메뉴를 사용자들이 수정하지 못하도록 설정합니다.</para>
      </listitem>
    </itemizedlist>

    <para>그놈 데스크탑 내의 메뉴들은 다음과 같은 요소들을 사용합니다:</para>

    <itemizedlist>
      <listitem>
        <para>메뉴 정의 파일</para>
      </listitem>

      <listitem>
        <para>데스크탑 엔트리 파일</para>
      </listitem>

      <listitem>
        <para>디렉토리 엔트리 파일</para>
      </listitem>
    </itemizedlist>
  </sect1>

  <sect1 id="menustructure-13">
    <title>메뉴 정의 파일</title>

    <indexterm>
      <primary>메뉴 정의 파일</primary>
    </indexterm>

    <indexterm>
      <primary>.menu 파일</primary>

      <see>메뉴 정의 파일</see>
    </indexterm>

    <para>메뉴 파일은 그놈 메뉴 모음에서 사용되는 메뉴들의 계층 구조를 정의합니다. 이 파일을 수정하여 모든 사용자에게 적용되는 메뉴를 조정하거나, 지정한 <filename>applications.menu</filename> 파일의 위치에 따라 특정 사용자에게 적용되는 메뉴를 조정할 수 있습니다.</para>

    <para>메뉴 파일은 <filename>$XDG_CONFIG_DIRS/menus/applications.menu</filename> 파일입니다. 만약 <envar>$XDG_CONFIG_DIRS</envar><footnote>
        <para>$XDG_CONFIG_DIRS는 <ulink url="http://www.freedesktop.org/Standards/basedir-spec">XDG 기본 디렉토리 명세서</ulink>에 정의된 환경 변수입니다.</para>
      </footnote> 변수가 설정되어 있지 않다면, 기본 경로인 <filename>/etc/xdg</filename>가 사용됩니다. 이것은 사용자가 수정한 버전의 파일은 <filename>$XDG_CONFIG_HOME/menus/applications.menu</filename>에 존재할 수 있으며, 이 경우 해당 파일이 먼저 사용된다는 것을 의미합니다. 만약 <envar>$XDG_CONFIG_HOME</envar> 변수가 설정되어 있지 않으면, 기본 경로인 <filename>~/.config</filename>가 사용됩니다. 여러 개의 <filename>applications.menu</filename> 파일이 존재하는 경우에는 <envar>$XDG_CONFIG_DIRS</envar> 변수 내에서 먼저 나오는 디렉토리가 우선 순위를 가집니다. 이 경우 첫 번째로 찾은 파일이 사용되며 나머지는 무시됩니다.</para>

    <para>어떤 순서로 경로를 검색하는지 혼동스러운 사람들을 위해, 아래에서 <filename>applications.menu</filename> 파일의 위치를 찾기 위한 경로의 목록을 설명합니다:</para>

    <orderedlist>
      <listitem>
        <para><envar>$XDG_CONFIG_HOME</envar> 변수 내의 각 디렉토리를 순서대로 검색하여 <filename>menus/applications.menu</filename> 파일을 찾습니다. 만약 <envar>$XDG_CONFIG_HOME</envar> 변수가 설정되지 않았다면, 기본 값인  <filename>~/.config/</filename> 디렉토리가 사용됩니다.</para>
      </listitem>

      <listitem>
        <para><envar>$XDG_CONFIG_DIRS</envar> 변수 내의 각 디렉토리를 순서대로 검색하여 <filename>menus/applications.menu</filename> 파일을 찾습니다. 만약 <filename>$XDG_CONFIG_DIRS</filename> 변수가 설정되지 않았다면, 기본 값인 <filename>/etc/xdg/</filename> 디렉토리가 사용됩니다.</para>
      </listitem>

      <listitem>
        <para>처음으로 찾은 <filename>applications.menu</filename> 파일을 사용합니다.</para>
      </listitem>
    </orderedlist>

    <para> <xref linkend="example-menu"/> 부분에서 <filename>.menu</filename> 파일의 예를 보여줍니다. 이 예제에서 최상위 메뉴는 <literal>Applications</literal>이며, 이는 <literal>&lt;Name&gt;</literal> 엘리먼트에서 볼 수 있습니다. <literal>Applications</literal> 메뉴는 하나의 하위 메뉴 만을 포함하지만, 여러 개의 하위 메뉴를 가질 수도 있습니다. 각 하위 메뉴는 <literal>&lt;Include&gt;</literal> 엘리먼트를 가질 수 있습니다. <literal>&lt;Include&gt;</literal> 엘리먼트는 매칭 규칙을 사용하여 적절한 데스크탑 엔트리를 걸러내는 작업을 위해 사용됩니다.</para>

    <para>예르 들어 <literal>&lt;Category&gt;</literal> 엘리먼트는 오직 <link linkend="category-key"><literal>분류</literal> 키</link>가 <literal>&lt;Category&gt;</literal> 엘리먼트의 내용을 포함하는 <link linkend="menustructure-desktopentry"><emphasis>데스크탑 엔트리</emphasis></link>를 선택하는 기본 매칭 규칙입니다. 이 예제에서 <literal>Accessories</literal> 메뉴는 분류 키에 <quote>Utility</quote>를 포함하지만  <quote>System</quote>을 포함하지 않는 <emphasis>데스크탑 엔트리</emphasis> 만을 포함할 것입니다. 분류 키에 대한 자세한 정보는 <xref linkend="menustructure-desktopentry"/> 부분을 보기 바랍니다.</para>

    <example id="example-menu">
      <title><filename>.menu</filename> 파일의 예</title>

      <para><programlisting>&lt;!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
 "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd"&gt;
&lt;Menu&gt;
  &lt;Name&gt;Applications&lt;/Name&gt;
  &lt;Directory&gt;Applications.directory&lt;/Directory&gt;

  &lt;!-- Read standard .directory and .desktop file locations --&gt;
  &lt;DefaultAppDirs/&gt;
  &lt;DefaultDirectoryDirs/&gt;

  &lt;!-- Accessories submenu --&gt;
  &lt;Menu&gt;
    &lt;Name&gt;Accessories&lt;/Name&gt;
    &lt;Directory&gt;Accessories.directory&lt;/Directory&gt;
    &lt;Include&gt;
      &lt;And&gt;
        &lt;Category&gt;Utility&lt;/Category&gt;
        &lt;Not&gt;
          &lt;Category&gt;System&lt;/Category&gt;
        &lt;/Not&gt;
      &lt;/And&gt;
    &lt;/Include&gt;
  &lt;/Menu&gt; &lt;!-- End Accessories --&gt;

  &lt;!-- possibly more submenus --&gt;

&lt;/Menu&gt; &lt;!-- End Applications --&gt;
</programlisting></para>
    </example>

    <para><xref linkend="menustructure-xmlmenu"/>는 <filename>.menu</filename> 파일 내의 엘리먼트 중의 일부에 대해 설명합니다. 보다 자세한 내용은 <ulink url="http://www.freedesktop.org/wiki/Standards/menu-spec">XDG 메뉴 명세서</ulink>를 보기 바랍니다.</para>

    <table frame="topbot" id="menustructure-xmlmenu">
      <title>메뉴 정의 파일 엘리먼트</title>

      <tgroup cols="2" colsep="0" rowsep="0">
        <colspec colname="colspec2" colwidth="33.83*"/>

        <colspec colname="colspec3" colwidth="80.00*"/>

        <thead>
          <row rowsep="1">
            <entry><para>엘리먼트</para></entry>

            <entry><para>설명</para></entry>
          </row>
        </thead>

        <tbody>
          <row>
            <entry colname="colspec2" valign="top"><para><literal>&lt;Menu&gt;</literal> </para></entry>

            <entry colname="colspec3" valign="top"><para>최상위 엘리먼트이며, 하위 메뉴를 정의하는 <literal>&lt;Menu&gt;</literal> 엘리먼트를 내부에 포함할 수 있습니다. 이러한 하위 메뉴의 배치가 메뉴 구조를 결정합니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec2" valign="top"><para><literal>&lt;Name&gt;</literal> </para></entry>

            <entry colname="colspec3" valign="top"><para>메뉴의 이름을 지정합니다. 모든  <literal>&lt;Menu&gt;</literal> 엘리먼트는 반드시  <literal>&lt;Name&gt;</literal> 엘리먼트를 포함해야 합니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec2" valign="top"><para><literal>&lt;Directory&gt;</literal>
            </para></entry>

            <entry colname="colspec3" valign="top"><para>메뉴의 이름, 설명, 아이콘 등을 포함하는 디렉토리 엔트리 파일의 이름을 지정합니다. 만약 이 엘리먼트가 없다면 <literal>&lt;Name&gt;</literal> 엘리먼트의 내용이 메뉴의 이름으로 표시됩니다.</para><para>기본적으로 <citetitle>XDG 메뉴 명세서</citetitle>에서 지정한 대로 <filename>$XDG_DATA_DIRS/desktop-directories/</filename> 위치 내에서 <filename>.directory</filename> 파일을 검색합니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;DefaultAppDirs&gt;</literal></entry>

            <entry colname="colspec3">이것은 <filename>$XDG_DATA_DIRS/applications/</filename> 내에서 이용 가능한 모든 데스크탑 엔트리를 찾으라는 지시입니다. 만약 이러한 지시가 포함되지 않았다면 이 위치에서는 데스크탑 엔트리를 찾지 않을 것입니다.</entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;DefaultDirectoryDirs&gt;</literal></entry>

            <entry colname="colspec3">이것은 <filename>$XDG_DATA_DIRS/desktop-directories/</filename> 내에서 이용 가능한 모든 디렉토리 엔트리를 찾으라는 지시입니다. 만약 이러한 지시가 포함되지 않았다면 이 위치에서는 디렉토리 엔트리를 찾지 않을 것입니다.</entry>
          </row>

          <row>
            <entry colname="colspec2" valign="top"><para><literal>&lt;Include&gt;</literal></para></entry>

            <entry colname="colspec3">메뉴의 내용을 만들어 낼 매칭 규칙의 목록을 포함합니다. 여기에는 <literal>&lt;Filename&gt;</literal>, <literal>&lt;Category&gt;</literal>, <literal>&lt;And&gt;</literal>, <literal>&lt;Or&gt;</literal>, <literal>&lt;Not&gt;</literal>, <literal>&lt;All&gt;</literal> 등의 매칭 규칙이 사용될 수 있습니다. 만약 하나 이상의 규칙이 포함되면 각 규칙들은 논리합(logical OR)으로 연결되므로, 이러한 규칙 중 어느 하나라도 만족하는 <emphasis>데스크탑 엔트리</emphasis>는 모두 포함됩니다.</entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;Exclude&gt;</literal></entry>

            <entry colname="colspec3"><literal>&lt;Include&gt;</literal>와 반대되는 엘리먼트로 이 엘리먼트 내의 규칙에 매칭되는 모든 <emphasis>데스크탑 엔트리</emphasis>는 포함된 엘리먼트 집합에서 제외됩니다. 따라서 이 엘리먼트는 반드시 <literal>&lt;Include&gt;</literal> 엘리먼트 보다 뒤에 나와야 합니다.</entry>
          </row>

          <row>
            <entry colsep="colspec2"><literal>&lt;Filename&gt;</literal></entry>

            <entry colname="colspec3">데스크탑 파일 ID가 <literal>&lt;Filename&gt;</literal> 엘리먼트의 내용과 일치할 때 <emphasis>데스크탑 엔트리</emphasis>를 선택하는 매칭 규칙.</entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;Category&gt;</literal></entry>

            <entry colname="colspec3">분류 키가 <literal>&lt;Category&gt;</literal> 엘리먼트의 내용과 일치할 때 <emphasis>데스크탑 엔트리</emphasis>를 선택하는 매칭 규칙.</entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;And&gt;</literal></entry>

            <entry colname="colspec3"><literal>&lt;And&gt;</literal> 엘리먼트 내에 포함된 <emphasis>모든</emphasis> 매칭 규칙들과 일치할 때 <emphasis>데스크탑 엔트리</emphasis>를 선택하는 매칭 규칙.</entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;Or&gt;</literal></entry>

            <entry colname="colspec3"><literal>&lt;Or&gt;</literal> 엘리먼트 내에 포함된 <emphasis>어떤</emphasis> 매칭 규칙들과 일치할 때 <emphasis>데스크탑 엔트리</emphasis>를 선택하는 매칭 규칙.</entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;Not&gt;</literal></entry>

            <entry colname="colspec3"><literal>&lt;Not&gt;</literal> 엘리먼트 내에 포함된 <emphasis>어떤</emphasis> 매칭 규칙들과 일치할 때 <emphasis>데스크탑 엔트리</emphasis>를 선택하지 않는 매칭 규칙.</entry>
          </row>

          <row>
            <entry colname="colspec2"><literal>&lt;All&gt;</literal></entry>

            <entry colname="colspec3">모든 <placehollder-1/>를 선택하는 매칭 규칙.</entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </sect1>

  <sect1 id="menustructure-desktopentry">
    <title>데스크탑 엔트리 파일</title>

    <anchor id="menustructure-6"/>

    <indexterm>
      <primary>데스크탑 엔트리 파일</primary>
    </indexterm>

    <indexterm>
      <primary>.desktop 파일</primary>

      <see>데스크탑 엔트리 파일</see>
    </indexterm>

    <para><firstterm>데스크탑 엔트리 파일</firstterm>은 메뉴 내의 한 항목에 대한 정보를 제공하는 데이터 파일입니다. 데스크탑 엔트리 파일은 해당 항목의 이름, 실행할 명령, 아이콘 등과 같은 세부 정보를 지정합니다. 또한 여기에는 메뉴 계층 내에 항목이 포함될 위치를 결정하는 키워드도 포함됩니다.</para>

    <para>데스크탑 엔트리 파일은 반드시 <filename>$XDG_DATA_DIRS/applications</filename> 디렉토리 내에 있어야 하며, <filename>.desktop</filename> 파일 확장자를 사용해야 합니다. 만약 <envar>$XDG_DATA_DIRS</envar><footnote>
        <para>$XDG_DATA_DIRS는 <ulink url="http://www.freedesktop.org/Standards/basedir-spec">XDG 기본 디렉토리 명세서</ulink>에 정의된 환경 변수입니다.</para>
      </footnote> 변수가 설정되어 있지 않으면 기본값인 <filename>/usr/share</filename> 경로가 사용됩니다. 이것은 사용자가 지정한 데스크탑 엔트리들은 <filename>$XDG_DATA_HOME/applications</filename> 디렉토리 내에 있어야 하며, 이 경로가 먼저 검색된다는 것을 뜻합니다. 만약 <envar>$XDG_DATA_HOME</envar> 변수가 설정되어 있지 않으면, 기본값인 <filename>~/.local/share</filename> 경로가 사용됩니다. 데스크탑 엔트리들은 <envar>$XDG_DATA_DIRS</envar> 환경 변수 내의 모든 디렉토리에서 수집됩니다. 만약 같은 이름의 <filename>.desktop</filename> 파일이 여러 개 있는 경우에는, <envar>$XDG_CONFIG_DIRS</envar> 내에서 먼저 나타난 디렉토리에 있는 것이 사용됩니다.</para>

    <para>아래는 데스크탑 엔트리 파일의 예제입니다:</para>

    <programlisting>[Desktop Entry]
Encoding=UTF-8
Name=Calculator
Name[fr]=Calculatrice
...
Comment=Perform calculations
Comment[fr]=Effectue des calculs compliqués
...
Exec=gcalctool
Icon=accessories-calculator
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Utility;Calculator</programlisting>

    <para><xref linkend="menustructure-TBL-7"/>는 데스크탑 엔트리 파일에 사용되는 가장 중요한 키들에 대해 설명합니다. 이에 대한 자세한 정보는 <ulink url="http://www.freedesktop.org/Standards/desktop-entry-spec">XDG 데스크탑 엔트리 명세서</ulink>를 보기 바랍니다.</para>

    <table frame="topbot" id="menustructure-TBL-7">
      <title>데스크탑 엔트리 키</title>

      <tgroup cols="2" colsep="0" rowsep="0">
        <colspec colname="colspec0" colwidth="25.25*"/>

        <colspec colname="colspec1" colwidth="74.75*"/>

        <thead>
          <row rowsep="1">
            <entry><para>데스크탑 엔트리 키</para></entry>

            <entry><para>설명</para></entry>
          </row>
        </thead>

        <tbody>
          <row>
            <entry colname="colspec0" id="category-key" valign="top"><para>
            <literal>Categories</literal> </para></entry>

            <entry colname="colspec1" valign="top"><para>이 항목을 설명하는 핵심어를 지정합니다. 각 단어들은 세미콜론 (;) 기호를 통해 구분됩니다. 표준 분류 핵심어의 목록을 확인하려면, </para><para><link linkend="menustructure-13">메뉴 정의 파일</link>은 이 분류(Categories)키를 이용하여 데스크탑 엔트리와 메뉴를 매핑해 줍니다.</para></entry>
          </row>

          <row>
            <entry valign="top"><para> <literal>Comment</literal>
            </para></entry>

            <entry valign="top"><para>해당 항목에 대한 짧은 설명을 지정합니다. 이 설명은 메뉴 내에서 해당 항목을 가리킬 때 풍선 도움말로 표시됩니다.</para></entry>
          </row>

          <row>
            <entry valign="top"><para> <literal>Encoding</literal>
            </para></entry>

            <entry valign="top"><para>데스크탑 엔트리 파일의 인코딩을 지정합니다.</para></entry>
          </row>

          <row>
            <entry valign="top"><para> <literal>Exec</literal> </para></entry>

            <entry valign="top"><para>메뉴에서 항목이 선택되었을 때 실행할 명령을 지정합니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec0" valign="top"><para>
            <literal>Icon</literal> </para></entry>

            <entry colname="colspec1" valign="top"><para>항목을 표시할 아이콘 파일의 이름을 지정합니다. 파일의 경로나 확장자를 지정하지 마십시오.</para></entry>
          </row>

          <row>
            <entry><literal>MimeType</literal></entry>

            <entry>프로그램에서 처리할 수 있는 MIME 형식을 지정합니다.</entry>
          </row>
         
          <row>
            <entry valign="top"><para> <literal>Name</literal> </para></entry>

            <entry valign="top"><para>항목의 이름을 지정합니다. 이 이름은 메뉴 내의 항목에 표시됩니다.</para></entry>
          </row>

          <row>
            <entry valign="top"><para> <literal>NoDisplay</literal> </para></entry>

            <entry valign="top"><para>이 옵션은 <quote>이 프로그램은 존재하지만, 메뉴에 표시하지 않을 것</quote>을 의미합니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec0" valign="top"><para>
            <literal>Terminal</literal> </para></entry>

            <entry colname="colspec1" valign="top"><para><literal>Exec</literal> 키에 지정된 명령이 터미널 창에서 실행될 지 여부를 지정합니다. 만약 이 값이 <literal>참</literal>이면 해당 명령은 터미널 창에서 실행됩니다.</para><para>만약 해당 명령이 자체적으로 실행 창을 만들지 않는다면, 이 키의 값은 반드시 <literal>참</literal>이 되어야 합니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec0" valign="top"><para>
            <literal>Type</literal> </para></entry>

            <entry colname="colspec1" valign="top"><para>해당 항목의 형식을 지정합니다. 이 값은 다음과 같은 것들 중 하나입니다:</para><itemizedlist>
                <listitem>
                  <para><literal>Application</literal>: 이 항목은 프로그램을 실행합니다.</para>
                </listitem>

                <listitem>
                  <para><literal>Link</literal>: 이 항목은 파일, 폴더 혹은 (FTP 사이트, 웹페이지, Windows 공유 등과 같은) 원격지의 자원에 대한 링크입니다.</para>
                </listitem>

                <listitem>
                  <para><literal>FSDevice</literal>: 이 항목은 파일 시스템 장치입니다.</para>
                </listitem>

                <listitem>
                  <para><literal>Directory</literal>: 이 항목은 디렉토리입니다.</para>
                </listitem>
              </itemizedlist></entry>
          </row>

        </tbody>
      </tgroup>
    </table>

    <para>데스크탑 엔트리 파일의 키에 대한 자세한 정보는, 다음 URL에서 데스크탑 엔트리 명세서를 보기 바랍니다:</para>

    <literallayout>
    <ulink url="http://www.freedesktop.org/Standards/desktop-entry-spec">http://www.freedesktop.org/Standards/desktop-entry-spec</ulink>
    </literallayout>

    <note>
      <para>패널 실행기와 데스크탑 객체에서도 데스크탑 엔트리 파일을 사용합니다. 실행 아이콘과 데스크탑 객체를 위한 데스크탑 엔트리 파일도 메뉴 항목과 동일한 정보를 제공합니다. 예를 들어 데스크탑 엔트리 파일은 사용자가 실행 아이콘이나 데스크탑 객체를 선택하면 실행할 명령을 제공합니다.</para>
    </note>
  </sect1>

  <sect1 id="menustructure-14">
    <title>디렉토리 엔트리 파일</title>

    <indexterm>
      <primary>디렉토리 엔트리 파일</primary>
    </indexterm>

    <indexterm>
      <primary>.directory 파일</primary>

      <see>디렉토리 엔트리 파일</see>
    </indexterm>

    <para><firstterm>디렉토리 엔트리 파일</firstterm>은 메뉴에 대한 정보를 제공하는 데이터 파일입니다. 디렉토리 엔트리 파일은 메뉴의 이름, 풍선 도움말, 아이콘과 같은 정보들을 지정합니다. 디렉토리 엔트리 파일의 확장자는 <filename>.directory</filename>입니다.</para>

    <para>디렉토리 엔트리 파일은 반드시 <filename>$XDG_DATA_DIRS/desktop-directories</filename> 디렉토리 내에 있어야 합니다. 만약 <envar>$XDG_DATA_DIRS</envar> 변수가 설정되어 있지 않으면, 기본값으로 <filename>/usr/share</filename> 경로가 사용됩니다. 이것은 사용자가 지정한 디렉토리 엔트리는 반드시 <filename>$XDG_DATA_HOME/desktop-directories</filename> 내에 있어야 한다는 것을 뜻하며, 이 경우 해당 파일이 먼저 검색됩니다. 만약 <envar>$XDG_DATA_DIRS</envar> 변수가 설정되어 있지 않다면, 기본값인 <filename>.directory</filename> 경로가 사용됩니다. 디렉토리 엔트리들은 <envar>$XDG_DATA_HOME</envar> 환경 변수내의 모든 디렉토리에서 수집됩니다. 만약 같은 이름의 <filename>~/.local/share</filename> 파일이 여러 개 있는 경우에는 <envar>$XDG_DATA_DIRS</envar> 내에서 먼저 나타난 디렉토리에 있는 것이 사용됩니다.</para>

    <para>아래는 디렉토리 엔트리 파일의 예제입니다:</para>

    <programlisting>[Desktop Entry]
Name=Graphics
Name[fr]=Graphisme
...
Comment=Graphics applications
Comment[fr]=Applications graphiques
...
Icon=gnome-graphics
Type=Directory
Encoding=UTF-8</programlisting>

    <para><xref linkend="menustructure-TBL-15"/>는 디렉토리 엔트리 파일 내의 가장 중요한 키들에 대해 설명합니다.</para>

    <table frame="topbot" id="menustructure-TBL-15">
      <title>디렉토리 엔트리 키</title>

      <tgroup cols="2" colsep="0" rowsep="0">
        <colspec colname="colspec0" colwidth="27.07*"/>

        <colspec colname="colspec1" colwidth="72.93*"/>

        <thead>
          <row rowsep="1">
            <entry><para>디렉토리 엔트리 키</para></entry>

            <entry><para>설명</para></entry>
          </row>
        </thead>

        <tbody>
          <row>
            <entry colname="colspec0" valign="top"><para>
            <literal>Name</literal> </para></entry>

            <entry colname="colspec1" valign="top"><para>메뉴의 이름을 지정합니다. 이 이름은 메뉴에 표시됩니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec0" valign="top"><para>
            <literal>Comment</literal> </para></entry>

            <entry colname="colspec1" valign="top"><para>메뉴에 대한 짧은 설명을 지정합니다. 이 내용은 해당 메뉴를 가리킬 때 풍선 도움말로 나타납니다.</para></entry>
          </row>

          <row>
            <entry colname="colspec0" valign="top"><para>
            <literal>Icon</literal> </para></entry>

            <entry colname="colspec1" valign="top"><para>메뉴를 표시하는 아이콘 파일 이름을 지정합니다. 파일 이름의 경로나 확장자를 지정하지 마십시오.</para></entry>
          </row>

          <row>
            <entry valign="top"><para> <literal>Type</literal> </para></entry>

            <entry valign="top"><para>메뉴의 형식을 지정합니다. 이 키의 값은 항상 <literal>Directory</literal>입니다.</para></entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </sect1>

  <sect1 id="menustructure-2">
    <title>시스템 메뉴 편집하기</title>

    <anchor id="menustructure-23"/>

    <indexterm>
      <primary>메뉴</primary>

      <secondary>편집</secondary>
    </indexterm>

    <para>메뉴 설정을 변경하기 위해 메뉴 설정 파일과 메뉴 데이터 파일을 직접 편집할 수 있습니다.</para>

    <sect2 id="menustructure-3">
      <title>메뉴 추가하기</title>

      <anchor id="menustructure-19"/>

      <anchor id="menustructure-20"/>

      <indexterm>
        <primary>메뉴</primary>

        <secondary>더하기</secondary>
      </indexterm>

      <para>모든 사용자들이 이용할 수 있는 메뉴를 더하려면 다음 순서대로 하십시오:</para>

      <orderedlist>
        <listitem>
          <para>더하고 싶은 항목에 대한 디렉토리 엔트리 파일을 만들어서, <filename>$XDG_DATA_DIRS/desktop-directories</filename> 디렉토리 아래에 둡니다. 디렉토리 엔트리 파일에 대한 정보는 <xref linkend="menustructure-14"/> 부분을 보기 바랍니다.</para>
        </listitem>

        <listitem>
          <para><filename>$XDG_CONFIG_DIRS/menus/applications.menu</filename> 파일을 찾습니다.</para>
        </listitem>

        <listitem>
          <para><filename>.menu</filename> 파일에서, 새 메뉴에 대한 <literal>&lt;Menu&gt;</literal> 엘리먼트를 더합니다. <filename>.menu</filename> 파일에 대한 정보는 <xref linkend="menustructure-13"/> 부분을 보기 바랍니다.</para>
        </listitem>

        <listitem>
          <para><literal>&lt;Menu&gt;</literal> 엘리먼트 아래에 <literal>&lt;Name&gt;</literal> 엘리먼트를 만듭니다. Name 엘리먼트의 내용은 해당 메뉴에 대한 이름이 되어야 합니다.</para>
        </listitem>

        <listitem>
          <para><literal>&lt;Menu&gt;</literal> 엘리먼트 아래에 <literal>&lt;Directory&gt;</literal> 엘리먼트를 만듭니다. Directory 엘리먼트의 내용은 디렉토리 엔트리 파일의 이름이 되어야 합니다.</para>
        </listitem>

        <listitem>
          <para>메뉴에 항목을 더하는 방법은 <xref linkend="menustructure-4"/> 부분을 보기 바랍니다.</para>
        </listitem>
      </orderedlist>

      <para>다음 번에 사용자가 로그인하면, 메뉴 모음에서 해당 메뉴를 볼 수 있습니다.</para>

      <note>
        <title>메뉴가 보이지 않는다면?</title>

        <para>만약 <literal>&lt;Include&gt;</literal> 엘리먼트 내에 매칭 규칙을 지정하지 않았거나, 매칭 규칙이 어떤 데스크탑 엔트리와도 적용되지 않는다면 메뉴 모듬에서 해당 메뉴를 보지 못할 수도 있습니다.</para>
      </note>
    </sect2>

    <sect2 id="menustructure-4">
      <title>메뉴에 항목 추가하기</title>

      <indexterm>
        <primary>메뉴</primary>

        <secondary>항목 더하기</secondary>
      </indexterm>

      <para>모든 사용자들이 이용할 수 있는 메뉴 항목을 더하려면, 다음 순서대로 하십시오:</para>

      <orderedlist>
        <listitem>
          <para>더하고 싶은 항목에 대한 데스크탑 엔트리 파일을 만듭니다. 데스크탑 엔트리 파일에 대한 정보는 <xref linkend="menustructure-desktopentry"/> 부분을 보기 바랍니다.</para>
        </listitem>

        <listitem>
          <para>데스크탑 엔트리 파일을 <filename>$XDG_DATA_DIRS/applications</filename> 폴더에 둡니다.</para>
        </listitem>

        <listitem>
          <para><filename>$XDG_CONFIG_DIRS/menus/applications.menu</filename> 파일을 찾습니다.</para>
        </listitem>

        <listitem>
          <para><literal>&lt;Menu&gt;</literal> 엘리먼트가 1단계에서 만든 데스크탑 엔트리 파일과 일치하는 매칭 규칙을 가지는 <literal>&lt;Include&gt;</literal> 엘리먼트를 포함하는 지 확인합니다.</para>
        </listitem>
      </orderedlist>

      <para>다음 번에 사용자가 로그인하면, 해당 위치에 메뉴 항목이 보일 것입니다.</para>
    </sect2>

    <sect2 id="menustructure-9">
      <title>메뉴 속성 편집하기</title>

      <indexterm>
        <primary>메뉴</primary>

        <secondary>속성 편집</secondary>
      </indexterm>

      <para>모든 사용자에게 적용되는 메뉴의 속성을 편집하려면, 다음 순서대로 하십시오:</para>

      <orderedlist>
        <listitem>
          <para><filename>$XDG_CONFIG_DIRS/menus/applications.menu</filename> 파일을 찾습니다.</para>
        </listitem>

        <listitem>
          <para>이 파일에서 수정하고 싶은 메뉴에 대한 <literal>&lt;Menu&gt;</literal> 엔트리를 찾습니다. 디렉토리 엔트리 파일의 이름은 <literal>&lt;Directory&gt;</literal> 엘리먼트에 지정되어 있습니다.</para>
        </listitem>

        <listitem>
          <para>이 메뉴에 대한 디렉토리 엔트리 파일을 찾아서, 메뉴의 속성을 변경합니다. <filename>.directory</filename> 파일에 대한 자세한 정보는 <xref linkend="menustructure-14"/> 부분을 보기 바랍니다.</para>
        </listitem>
      </orderedlist>
    </sect2>

    <sect2 id="menustructure-10">
      <title>메뉴 항목 편집하기</title>

      <indexterm>
        <primary>메뉴</primary>

        <secondary>메뉴 항목 편집</secondary>
      </indexterm>

      <para>메뉴 항목을 편집하려면, 다음 순서대로 하십시오:</para>

      <orderedlist>
        <listitem>
          <para><filename>$XDG_DATA_DIRS/applications</filename> 디렉토리에서 해당 메뉴 항목에 대한 데스크탑 엔트리 파일을 찾습니다.</para>
        </listitem>

        <listitem>
          <para>데스크탑 엔트리 파일을 수정하여 메뉴 항목의 속성을 변경합니다. 데스크탑 엔트리 파일에 대한 자세한 정보는 <xref linkend="menustructure-desktopentry"/> 부분을 보기 바랍니다.</para>
        </listitem>
      </orderedlist>
    </sect2>

    <sect2 id="menustructure-11">
      <title>메뉴에서 항목 삭제하기</title>

      <indexterm>
        <primary>메뉴</primary>

        <secondary>메뉴 항목 지우기</secondary>
      </indexterm>

      <para>모든 사용자에게 적용되는 메뉴 항목을 지우려면:</para>

      <orderedlist>
        <listitem>
          <para><filename>$XDG_CONFIG_DIRS/menus/applications.menu</filename> 파일을 찾습니다.</para>
        </listitem>

        <listitem>
          <para>이 파일에서 지우고 싶은 데스크탑 엔트리를 포함하는 <literal>&lt;Menu&gt;</literal> 엘리먼트를 찾습니다.</para>
        </listitem>

        <listitem>
          <para><literal>&lt;Include&gt;</literal> 엘리먼트의 닫는 태그 뒤에 <literal>&lt;Exclude&gt;</literal> 엘리먼트를 추가합니다. 이 엘리먼트는 2단계에서 찾은 <literal>&lt;Menu&gt;</literal> 엘리먼트 내에 있어야 합니다.</para>
        </listitem>

        <listitem>
          <para><literal>&lt;Exclude&gt;</literal> 엘리먼트의 하위 엘리먼트로 특정 데스크탑 엔트리를 제외시키기 위한 <literal>&lt;Filename&gt;</literal> 매칭 규칙을 추가합니다.</para>
        </listitem>
      </orderedlist>

      <para>다음 번에 사용자가 로그인하면, 해당 메뉴 항목은 메뉴에 표시되지 않을 것입니다. <xref linkend="menustructure-deleteitem"/>는 <filename>applications.menu</filename> 파일에서 메뉴를 삭제하는 방법을 보여줍니다. <filename>dasher.desktop</filename> 데스크탑 엔트리는 접근성 메뉴에서 명시적으로 제외되었습니다.</para>

      <example id="menustructure-deleteitem">
        <title>메뉴에서 항목 삭제하기</title>

        <programlisting>&lt;!-- ... --&gt;

  &lt;Menu&gt;
    &lt;Name&gt;Accessibility&lt;/Name&gt;
    &lt;Directory&gt;Accessibility.directory&lt;/Directory&gt;
    &lt;Include&gt;
      &lt;And&gt;
        &lt;Category&gt;Accessibility&lt;/Category&gt;
        &lt;Not&gt;&lt;Category&gt;Settings&lt;/Category&gt;&lt;/Not&gt;
      &lt;/And&gt;
    &lt;/Include&gt;
    &lt;Exclude&gt;
      &lt;Filename&gt;dasher.desktop&lt;/Filename&gt;
    &lt;/Exclude&gt;
  &lt;/Menu&gt;

&lt;!-- ... --&gt;
</programlisting>
      </example>
    </sect2>
  </sect1>

  <sect1 id="menustructure-usermenus">
    <title>사용자 메뉴 편집 및 통합하기</title>

    <indexterm>
      <primary>메뉴</primary>

      <secondary>사용자 메뉴 편집</secondary>
    </indexterm>

    <para>다음과 같은 그놈 데스크탑 프로그램을 이용하여 사용자 메뉴를 편집할 수 있습니다:</para>

    <itemizedlist>
      <listitem>
        <para>그놈 메뉴 편집기</para>
      </listitem>
    </itemizedlist>

    <para>사용자들이 간편하게 자신의 메뉴를 편집할 수 있는 메뉴 편집기가 있습니다. 자세한 정보는 <ulink url="ghelp:user-guide">그놈 사용자 안내서</ulink>의 <ulink url="ghelp:user-guide?goseditmainmenu-1">메인 메뉴 모음 사용하기</ulink> 부분을 보기 바랍니다. 또는 직접 사용자 메뉴 파일을 만들거나 수정할 수도 있습니다.</para>

    <para>사용자 지정 메뉴를 직접 만들려면 <filename>$XDG_CONFIG_HOME/menus/applications.menu</filename> 파일이 반드시 존재해야 합니다. <envar>$XDG_CONFIG_HOME</envar> 변수가 설정되어 있지 않으면 기본값인 <filename>~/.config</filename> 디렉토리가 사용됩니다. 이곳은 <filename>applications.menu</filename> 파일을 맨 처음으로 찾아보는 곳이므로, 다른 모든 메뉴 파일보다 우선적으로 사용됩니다.</para>

    <para>사용자 메뉴는 <xref linkend="menustructure-13"/> 부분에서 설명한 모든 엘리먼트들을 포함할 수 있습니다. 허용된 엘리먼트의 전체 목록은 <ulink url="http://www.freedesktop.org/wiki/Standards/menu-spec">XDG 메뉴 명세서</ulink>를 보기 바랍니다.</para>

    <para>사용자 메뉴 파일은 시스템 메뉴 파일보다 우선적으로 사용되기 때문에, 시스템 메뉴를 <emphasis>통합</emphasis>하지 않는다면 시스템 메뉴 전체를 완전히 대체할 것입니다. 메뉴를 통합하는 방법은 다음 절에서 설명합니다.</para>

    <sect2>
      <title>시스템 메뉴 통합하기</title>

      <indexterm>
        <primary>메뉴</primary>

        <secondary>시스템 메뉴 통합</secondary>
      </indexterm>

      <para>때때로 사용자들은 표준 시스템 메뉴에 특정 항목들을 추가하거나 삭제하기 만을 원합니다. 이렇게 한 가지 만 변경하도록 지원하려면, 사용자 <filename>applications.menu</filename> 파일에 <literal>type="parent"</literal> 속성을 포함하는 <literal>&lt;MergeFile&gt;</literal> 엘리먼트를 사용하는 것이 좋습니다.</para>

      <para><literal>&lt;MergeFile&gt;</literal> 엘리먼트는 메뉴를 사용자의 메뉴 파일의 내용과 통합되도록 허용합니다. <literal>type="parent"</literal> 속성을 사용하면, <literal>&lt;MergeFile&gt;</literal> 엘리먼트의 내용은 무시되고, <filename>$XDG_CONFIG_DIRS/menus</filename> 디렉토리 내의 다음 <filename>applications.menu</filename> 파일을 이용해 통합합니다.</para>

      <note>
        <title>예전 명세서</title>

        <para>예전 버전의 명세서에는 <literal>type</literal> 속성이 포함되지 않았고 단순히 <literal>&lt;MergeFile&gt;</literal> 엘리먼트의 내용으로 통합될 메뉴 파일의 위치를 지정해야 했습니다. 따라서 <literal>type="parent"</literal> 속성이 사용된 경우에도 <literal>&lt;MergeFile&gt;</literal> 엘리먼트의 내용에 명시된 위치를 볼 수도 있습니다.</para>
      </note>

      <para>통합 과정은 다음과 같이 수행됩니다:</para>

      <itemizedlist>
        <listitem>
          <para>통합된 메뉴 파일<footnote>
              <para>통합된 메뉴 파일은 <filename>$XDG_CONFIG_DIRS/menus</filename> 디렉토리 내의 다음 <filename>applications.menu</filename> 파일을 가리킵니다.</para>
            </footnote> 내의 최상위 <literal>&lt;Menu&gt;</literal> 엘리먼트의 하위 엘리먼트들은 기본 메뉴 파일 내의 <literal>&lt;MergeFile&gt;</literal> 엘리먼트로 바뀝니다.</para>
        </listitem>

        <listitem>
          <para>같은 이름의 <literal>&lt;Menu&gt;</literal> 엘리먼트들은 하나의 <literal>&lt;Menu&gt;</literal> 엘리먼트로 합쳐집니다. 이것은 같은 이름을 가진 <literal>&lt;Menu&gt;</literal> 엘리먼트의 모든 하위 엘리먼트들을 <emphasis>마지막</emphasis>으로 나타나는 메뉴 엘리먼트에 추가하는 방식입니다.</para>
        </listitem>
      </itemizedlist>

      <para><xref linkend="menustructure-systemmerge"/>은 시스템 메뉴 파일을 통합하는 사용자 메뉴 파일의 예입니다.</para>

      <example id="menustructure-systemmerge">
        <title>시스템 메뉴 통합하기</title>

        <programlisting>&lt;!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
 "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd"&gt;

&lt;Menu&gt;
  &lt;Name&gt;Applications&lt;/Name&gt;
  &lt;MergeFile type="parent"&gt;/etc/xdg/menus/applications.menu&lt;/MergeFile&gt;
  &lt;Menu&gt;
    &lt;Name&gt;Accessibility&lt;/Name&gt;
    &lt;Exclude&gt;
      &lt;Filename&gt;dasher.desktop&lt;/Filename&gt;
    &lt;/Exclude&gt;
  &lt;/Menu&gt;
&lt;/Menu&gt;
</programlisting>
      </example>
    </sect2>

    <sect2>
      <title>임의의 메뉴 통합하기</title>

      <indexterm>
        <primary>메뉴</primary>

        <secondary>임의의 메뉴 통합하기</secondary>
      </indexterm>

      <para>임의의 메뉴 파일도 시스템 메뉴와 동일한 방식으로 통합할 수 있습니다. 차이점은 이 방식의 통합을 위해서는 <literal>type</literal> 속성이 <literal>path</literal>로 설정되거나 <literal>&lt;MergeFile&gt;</literal> 엘리먼트에 포함되어 있지 않아야 합니다.</para>

      <para>통합 과정은 <literal>&lt;MergeFile&gt;</literal> 엘리먼트에 지정된 <emphasis>통합된 메뉴 파일</emphasis>의 위치를 제외하고는 동일한 방식으로 수행됩니다.</para>
    </sect2>
  </sect1>
</chapter>

<chapter id="themes-0">
  <title>테마 설치하기</title>
  <highlights>
    <para>이 부분에서는 그놈 데스크탑에서 이용할 수 있는 테마와 그 설정에 대해서 설명하고, 테마 설정 옵션을 만들거나 설치하는 방법에 대해 알아봅니다.</para>
  </highlights>
  <sect1 id="themes-1">
    <title>테마 소개</title>
    <indexterm>
      <primary>테마</primary>
      <secondary>개요</secondary>
    </indexterm>
    <para>테마는 그놈 데스크탑의 일부에 대한 시각적인 효과를 지정하는 일련의 설정들을 말합니다. 사용자들은 그놈 데스크탑의 모양새를 바꾸기 위해 테마를 선택할 수 있습니다.</para>
    <para>테마는 다음과 같은 그놈 데스크탑의 여러 부분들에 대한 설정을 포함합니다:</para>
    <variablelist>
      <varlistentry>
        <term>컨트롤</term>
        <listitem>
          <para><indexterm><primary>테마</primary><secondary>컨트롤 옵션</secondary><tertiary>개요</tertiary></indexterm><indexterm><primary>GTK+ 테마</primary><see>테마, 컨트롤 옵션</see></indexterm>테마의 컨트롤 설정은 창, 패널, 애플릿 등의 모양새를 지정합니다. 또한 창, 패널, 애플릿 내에 있는 메뉴, 아이콘, 단추 등과 같은 그놈 호환 인터페이스 항목들의 모양새도 지정합니다. 몇몇 컨트롤 설정 옵션들은 특별한 접근성 기능을 위해 설계되었습니다. 사용자들은 <application>테마</application> 설정 도구 내의 <guilabel>컨트롤</guilabel> 탭에서 컨트롤 설정에 대한 옵션을 선택할 수 있습니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>창 가장자리</term>
        <listitem>
          <para><indexterm><primary>테마</primary><secondary>창 가장자리 옵션</secondary><tertiary>개요</tertiary></indexterm><indexterm><primary>메타시티 테마</primary><see>테마, 창 가장자리 옵션</see></indexterm>테마의 창 틀 설정은 창 테두리의 모양새 만을 지정합니다. 사용자들은 <application>테마</application> 설정 도구 내의 <guilabel>창 가장자리</guilabel> 탭에서 창 테두리 설정에 대한 옵션을 선택할 수 있습니다.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>Icon</term>
        <listitem>
          <para><indexterm><primary>themes</primary><secondary>아이콘 옵션</secondary><tertiary>개요</tertiary></indexterm><indexterm><primary>아이콘 테마</primary><see>테마, 아이콘 옵션</see></indexterm>테마의 아이콘 설정은 패널과 데스크탑 바탕 화면에 나타나는 아이콘들의 모양새를 지정합니다. 사용자들은 <application>테마</application> 설정 도구 내의 <guilabel>아이콘</guilabel> 탭에서 아이콘 설정에 대한 옵션을 선택할 수 있습니다.</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </sect1>
  <sect1 id="themes-17">
    <title>테마 인덱스 파일</title>
    <para>각각의 테마는 테마의 특성을 정의하는 인덱스 파일을 가지고 있습니다. 인덱스 파일의 이름은 <filename>/usr/share/themes/<replaceable>테마-이름</replaceable>/index.theme</filename>입니다.</para>
    <para>다음은 테마 인덱스 파일의 예제입니다:</para>
    <programlisting>[Desktop Entry]
Type=X-GNOME-Metatheme
Name=High Contrast Large
Name[es]=Alto contraste grande
Comment=Large black-on-white text and icons
Comment[es]=Textos e iconos grandes en negro sobre blanco
Encoding=UTF-8

[X-GNOME-Metatheme]
GtkTheme=HighContrastLargePrint
IconTheme=HighContrast
MetacityTheme=Atlanta
ApplicationFont=sans 18
</programlisting>
    <para>아래의 표는 테마 인덱스 파일 내의 키들에 대해 설명합니다:</para>
    <table frame="topbot" id="themes-TBL-18">
      <title>테마 인덱스 파일 내의 키</title>
      <tgroup cols="2" colsep="0" rowsep="0">
        <colspec colname="colspec0" colwidth="33*"/>
        <colspec colname="colspec1" colwidth="67*"/>
        <thead>
          <row rowsep="1">
            <entry>
              <para>인덱스 파일 키</para>
            </entry>
            <entry>
              <para>설명</para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry colname="colspec0" valign="top">
              <para>
                <literal>Type</literal>
              </para>
            </entry>
            <entry colname="colspec1" valign="top">
              <para>이 테마가 나타내는 컨트롤, 창 가장자리, 아이콘 등과 같은 테마 옵션들의 모양새을 지정합니다.</para>
            </entry>
          </row>
          <row>
            <entry colname="colspec0" valign="top">
              <para>
                <literal>Name</literal>
              </para>
            </entry>
            <entry colname="colspec1" valign="top">
              <para>테마의 이름을 지정합니다. 이것은 <application>테마</application> 설정 도구에서 나타나는 테마의 이름입니다.</para>
            </entry>
          </row>
          <row>
            <entry colname="colspec0" valign="top">
              <para>
                <literal>Comment</literal>
              </para>
            </entry>
            <entry colname="colspec1" valign="top">
              <para>테마에 대한 간략한 설명을 지정합니다. 이것은 <application>테마</application> 설정 도구에서 테마의 이름 아래에 표시되는 설명입니다.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <literal>GtkTheme</literal>
              </para>
            </entry>
            <entry valign="top">
              <para><application>테마</application> 설정 도구의 컨트롤 설정에 해당합니다. 창, 패널, 애플릿 등에 적용되는 컨트롤 설정 옵션을 지정합니다.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <literal>IconTheme</literal>
              </para>
            </entry>
            <entry valign="top">
              <para><application>테마</application> 설정 도구의 아이콘 설정에 해당합니다. 패널과 데스크탑 바탕 화면에 적요되는 아이콘 설정 옵션을 지정합니다.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <literal>MetacityTheme</literal>
              </para>
            </entry>
            <entry valign="top">
              <para><application>테마</application> 설정 도구의 창 가장자리 설정에 해당합니다. 창에 적용되는 테두리 설정 옵션을 지정합니다.</para>
            </entry>
          </row>
          <row>
            <entry colname="colspec0" valign="top">
              <para>
                <literal>ApplicationFont</literal>
              </para>
            </entry>
            <entry colname="colspec1" valign="top">
              <para><application>글꼴</application> 설정 도구의 프로그램 글꼴 설정에 해당합니다.</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </sect1>
  <sect1 id="themes-3">
    <title>새 컨트롤 옵션 설치하기</title>
    <indexterm>
      <primary>테마</primary>
      <secondary>컨트롤 옵션</secondary>
      <tertiary>설치</tertiary>
    </indexterm>
    <para><application>테마</application> 설정 도구 내의 컨트롤 설정에 대한 옵션을 추가할 수 있습니다. 컨트롤 옵션은 <filename>/usr/share/themes</filename> 디렉토리 내에 존재합니다. 파일 시스템 내의 컨트롤 옵션의 일반적인 구조는 다음과 같습니다:</para>
    <variablelist>
      <varlistentry>
        <term>옵션 파일</term>
        <listitem>
          <para>
            <filename>/usr/share/themes/<replaceable>옵션-이름</replaceable>/gtk-2.0/gtkrc</filename>
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>이미지 파일</term>
        <listitem>
          <para>
            <filename>/usr/share/themes/<replaceable>옵션-이름</replaceable>/pixmaps/*.*</filename>
          </para>
        </listitem>
      </varlistentry>
    </variablelist>
    <para>일반적으로 컨트롤 설정을 위한 새로운 옵션은 <filename>.tar.gz</filename> 파일 형태로 제공됩니다. 새 컨트롤 옵션을 설치하려면 <filename>.tar.gz</filename> 파일의 압축을 풀고, <filename>.tar</filename> 파일을 <filename>/usr/share/themes</filename> 디렉토리에 풀면 됩니다.</para>
    <para>사용자들은 컨트롤 설정을 위한 옵션을 개별적으로 설치할 수 있습니다. 그렇게 하려면 사용자의 설정 옵션은 <filename>$HOME/.themes</filename> 디렉토리에 저장됩니다.</para>
  </sect1>
  <sect1 id="themes-5">
    <title>새 창 가장자리 옵션 설치하기</title>
    <indexterm>
      <primary>테마</primary>
      <secondary>창 가장자리 옵션</secondary>
      <tertiary>설치</tertiary>
    </indexterm>
    <para><application>테마</application> 설정 도구 내의 창 가장자리 설정에 대한 옵션을 추가할 수 있습니다. 창 가장자리 옵션은 <filename>/usr/share/themes/<replaceable>옵션-이름</replaceable>/metacity-1</filename> 디렉토리 내에 존재합니다. 파일 시스템 내의 창 가장자리 옵션의 일반적인 구조는 다음과 같습니다:</para>
    <variablelist>
      <varlistentry>
        <term>옵션 파일</term>
        <listitem>
          <para>
            <filename>/usr/share/themes/<replaceable>옵션-이름</replaceable>/metacity-1/metacity-theme-1.xml</filename>
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>이미지 파일</term>
        <listitem>
          <para>
            <filename>/usr/share/themes/<replaceable>옵션-이름</replaceable>/metacity-1/*.*</filename>
          </para>
        </listitem>
      </varlistentry>
    </variablelist>
    <para>일반적으로 창 가장자리 설정을 위한 새로운 옵션은 <filename>.tar.gz</filename> 파일 형태로 제공됩니다. 새 창 가장자리 옵션을 설치하려면 <filename>.tar.gz</filename> 파일의 압축을 풀고, <filename>.tar</filename> 파일을 <filename>/usr/share/themes</filename> 디렉토리에 풀면 됩니다.</para>
    <para>사용자들은 창 가장자리 설정을 위한 옵션을 개별적으로 설치할 수 있습니다. 그렇게 하려면 사용자의 설정 옵션은 <filename>$HOME/.themes</filename> 디렉토리에 저장됩니다.</para>
  </sect1>
  <sect1 id="themes-16">
    <title>새 아이콘 옵션 설치하기</title>
    <indexterm>
      <primary>테마</primary>
      <secondary>아이콘 옵션</secondary>
      <tertiary>설치</tertiary>
    </indexterm>
    <para><application>테마</application> 설정 도구 내의 아이콘 설정에 대한 옵션을 추가할 수 있습니다. 아이콘 옵션은 <filename>/usr/share/icons/<replaceable>옵션-이름</replaceable></filename> 디렉토리 내에 존재합니다. 파일 시스템 내의 아이콘 옵션의 일반적인 구조는 다음과 같습니다:</para>
    <variablelist>
      <varlistentry>
        <term>옵션 파일</term>
        <listitem>
          <para>
            <filename>/usr/share/icons/<replaceable>옵션-이름</replaceable></filename>
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>이미지 파일</term>
        <listitem>
          <para>
            <filename>/usr/share/icons/<replaceable>옵션-이름</replaceable>/icons/*.*</filename>
          </para>
        </listitem>
      </varlistentry>
    </variablelist>
    <para>일반적으로 아이콘 설정을 위한 새로운 옵션은 <filename>.tar.gz</filename> 파일 형태로 제공됩니다. 새 아이콘 옵션을 설치하려면 <filename>.tar.gz</filename> 파일의 압축을 풀고, <filename>.tar</filename> 파일을 <filename>/usr/share/icons</filename> 디렉토리에 풀면 됩니다.</para>
    <para>사용자들은 아이콘 설정을 위한 옵션을 개별적으로 설치할 수 있습니다. 그렇게 하려면 사용자의 설정 옵션은 <filename>$HOME/.themes</filename> 디렉토리에 저장됩니다.</para>
  </sect1>
  <sect1 id="themes-11">
    <title>테마에 아이콘 설치하기</title>
    <indexterm>
      <primary>테마</primary>
      <secondary>아이콘 설치하기</secondary>
    </indexterm>
    <para>그놈 데스크탑은 사용자들의 특별한 시각적인 요구를 위해 설계된 몇 가지 테마를 제공합니다. 예를 들어 어떤 테마는 시력이 나쁜 사람들을 위해 설계되었습니다. 각각의 테마에 대해 아이콘이 잘 표시되려면 몇몇 버전의 아이콘이 필요할 것입니다.</para>
    <para>어떤 프로그램을 위한 새로운 아이콘을 설치할 필요가 있을 때가 있습니다. 새로운 아이콘을 설치할 때는, 반드시 여러 버전의 아이콘을 만들어야, 여러 테마들 내에서 올바로 표시될 것입니다. 다음과 같은 종류의 아이콘에 대한 여러 가지 버전을 만들어야 합니다:</para>
    <itemizedlist>
      <listitem>
        <para>그놈 데스크탑 내의 프로그램들이 사용하는 아이콘.</para>
      </listitem>
      <listitem>
        <para>GTK+ 응용 프로그램에서 내부적으로 사용되는 아이콘 혹은 GTK+ 스톡 아이콘.</para>
      </listitem>
    </itemizedlist>
    <para>새로운 아이콘을 설치할 때는, 여러 버전의 아이콘을 만들어야 테마 내에서 적절히 표시될 것입니다. 아이콘은 (예를 들어 PNG와 같은) 여러 형식으로 만들 수 있습니다. 데스크탑 환경에서 주로 사용되는 아이콘 크기는 48x48 픽셀입니다. 이 크기의 아이콘을 기본으로, 대부분의 테마들을 아이콘의 크기를 변경할 수 있습니다.</para>
    <para>새로운 아이콘을 설치할 때는, 다음과 같은 버전의 48x48 픽셀의 아이콘을 만들기 바랍니다:</para>
    <itemizedlist>
      <listitem>
        <para>보통 아이콘</para>
      </listitem>
      <listitem>
        <para>저대비 아이콘 </para>
      </listitem>
      <listitem>
        <para>고대비 아이콘</para>
      </listitem>
      <listitem>
        <para>역상 고대비 아이콘</para>
      </listitem>
    </itemizedlist>
    <para>가능하다면, 큰 크기의 인쇄가 필요없는 테마를 위해, 각 아이콘의 16x16 버전도 만들기 바랍니다.</para>
    <para><xref linkend="themes-3"/> 이나 <xref linkend="themes-5"/> 부분에 지정된 이미지 파일 위치에 아이콘을 설치하십시오. 예를 들어 HighContrastLargePrint 테마에 아이콘을 추가하려면, <filename>/usr/share/themes/HighContrastLargePrint/pixmaps</filename> 디렉토리에 아이콘을 추가합니다. 관련된 테마 파일에 아이콘에 대한 참조를 추가하십시오. 예를 들어 HighContrastLargePrint 테마에 아이콘을 추가하려면, 아이콘에 대한 참조에 <filename>/usr/share/themes/HighContrastLargePrint/gtk-2.0/gtkrc</filename> 파일을 추가하십시오. 해당 테마에 대한 <filename>gtkrc</filename> 파일을 수정하여 아이콘을 GTK 스톡 아이콘 ID와 연관시키십시오.</para>
    <para>프로그램 실행 아이콘과 패널에 대한 아이콘을 만드는 것에 대한 자세한 정보는 <ulink url="http://www.freedesktop.org/Standards/icon-theme-spec">http://www.freedesktop.org/Standards/icon-theme-spec</ulink> 부분을 보기 바랍니다.</para>
  </sect1>
  <sect1 id="themes-15">
    <title>사용자 지정 컨트롤 옵션 만들기</title>
    <indexterm>
      <primary>테마</primary>
      <secondary>컨트롤 옵션</secondary>
      <tertiary>커스텀 옵션 만들기</tertiary>
    </indexterm>
    <para>만약 컨트롤 설정에 대한 옵션이 사용자들의 요구에 맞지 않는다면, 원하는 컨트롤 옵션을 만들 수 있습니다. 특정 컨트롤 옵션을 만들려면, 다음 과정을 수행합니다:</para>
    <orderedlist>
      <listitem>
        <para><filename>/usr/share/themes</filename> 디렉토리 내에 해당 옵션을 위한 디렉토리 구조를 만듭니다. 다른 옵션들이 사용하는 것과 동일한 디렉토리 구조를 사용합니다. 예를 들어 SmallPrint라는 이름의 옵션을 만들고 싶다면, 다음 디렉토리를 만듭니다:</para>
        <itemizedlist>
          <listitem>
            <para>
              <filename>/usr/share/themes/SmallPrint</filename>
            </para>
          </listitem>
          <listitem>
            <para>
              <filename>/usr/share/themes/SmallPrint/gtk-2.0</filename>
            </para>
          </listitem>
        </itemizedlist>
      </listitem>
      <listitem>
        <para>사용자들의 요구와 가장 비슷한 <filename>gtkrc</filename> 파일을 찾아서, 새로운 옵션에 대한 <filename>gtk-2.0</filename> 디렉토리에 복사합니다.</para>
      </listitem>
      <listitem>
        <para>텍스트 편집기로 <filename>gtkrc</filename> 파일을 열고, 필요한 인터페이스 엘리먼트들의 속성을 변경합니다.</para>
      </listitem>
      <listitem>
        <para>만약 새로운 옵션이 이미지를 포함한다면, 새로운 옵션에 대한 <filename>pixmaps</filename> 디렉토리에 이미지를 복사합니다. 만약 새로운 옵션에서 다른 옵션이 사용 중인 이미지를 재사용하는 경우에는, 이미지의 복사본을 만들 필요가 없습니다. 대신, <filename>gtkrc</filename> 파일 내의 <literal>pixmap_path</literal> 엔트리가 올바른 위치를 가리키도록 확인하십시오.</para>
      </listitem>
    </orderedlist>
    <para>이제 사용자들이 컨트롤 설정에 대한 새로운 옵션을 선택할 수 있습니다.</para>
    <para><filename>gtkrc</filename> 파일에 대한 자세한 정보는 <ulink url="http://developer.gnome.org/doc/API/2.0/gtk/index.html">http://developer.gnome.org/doc/API/2.0/gtk/index.html</ulink> 부분을 보기 바랍니다.</para>
  </sect1>
</chapter>

<chapter id="fontconfig-0">
  <title>Configuring Fonts</title>
  <highlights>
    <para>This chapter describes how to configure fonts in the GNOME
Desktop.</para>
  </highlights>
  <sect1 id="fontconfig-1">
    <title>Introduction to Configuring Fonts</title>
    <indexterm>
      <primary>configuring fonts</primary>
      <see>글꼴</see>
    </indexterm>
    <indexterm>
      <primary>fontconfig</primary>
      <see>글꼴</see>
    </indexterm>
    <indexterm>
      <primary>글꼴</primary>
      <secondary>개요</secondary>
    </indexterm>
    <para>GNOME Desktop uses the <literal>fontconfig</literal> font configuration and
customization library. The <literal>fontconfig</literal> library can use all
kinds of fonts, including PostScript Type 1 fonts and TrueType fonts.</para>
    <para>The <literal>fontconfig</literal> library provides a list of all the
fonts available on a GNOME Desktop system. To compile this list, <literal>fontconfig</literal> searches the directories listed in the <filename>/etc/fonts/fonts.conf</filename> file. To view all the fonts available on a system, access the <literal>fonts:///</literal> location in the file manager on the system.</para>
    <para>For more information about the <literal>fontconfig</literal> library,
see the following URL: </para>
    <literallayout>
      <ulink url="http://freedesktop.org/software/fontconfig">http://freedesktop.org/software/fontconfig</ulink>
    </literallayout>
  </sect1>
  <sect1 id="fontconfig-4">
    <title>Font Substitution</title>
    <indexterm>
      <primary>글꼴</primary>
      <secondary>substitution</secondary>
    </indexterm>
    <para>The <literal>fontconfig</literal> library performs font substitution
when either entire fonts, or individual characters, are not present. If the
system needs to display a font that is not available, <literal>fontconfig</literal> attempts to display another, similar font. For example, if a web
page requests to display the Verdana font, and that font is not installed
on the system, <literal>fontconfig</literal> displays a similar font, such
as Helvetica. The list of similar fonts is defined in the <filename>/etc/fonts/fonts.conf</filename> file. </para>
    <para>If the system needs to display a character that is not present in the
selected font, <literal>fontconfig</literal> attempts to display the character
in another, similar font. For example, you might select Bitstream Vera Sans
as the font for the Text Editor application. The Bitstream Vera font family
does not include Cyrillic characters. If you open a document which contains
a Cyrillic character, Text Editor uses a similar font that includes Cyrillic
characters to display the character.</para>
    <para>The <literal>fontconfig</literal> library also defines aliases for fonts,
for example, <literal>serif</literal>, <literal>sans-serif</literal>, and <literal>monospace</literal>. When you select one of the aliases for a font, the system
uses the first font that is defined for that alias in the <filename>/etc/fonts/fonts.conf</filename>. </para>
  </sect1>
  <sect1 id="fontconfig-2">
    <title>To Add a Font for All Users</title>
    <indexterm>
      <primary>글꼴</primary>
      <secondary>adding for all users</secondary>
    </indexterm>
    <para>To add a font for all users, perform the following steps:</para>
    <orderedlist>
      <listitem>
        <para>Copy the font file to one of the directories in the <filename>/etc/fonts/fonts.conf</filename> file. Typically, fonts are stored in the <filename>/usr/share/fonts/</filename> directory.</para>
      </listitem>
      <listitem>
        <para>The <literal>fontconfig</literal> library updates the list
of fonts automatically. If the list of fonts is not updated, run the following
command:</para>
        <screen><userinput>fc-cache <replaceable>directory-name</replaceable></userinput></screen>
      </listitem>
    </orderedlist>
  </sect1>
  <sect1 id="fontconfig-3">
    <title>To Add a Font for an Individual User</title>
    <indexterm>
      <primary>글꼴</primary>
      <secondary>adding for individual users</secondary>
    </indexterm>
    <para>To add a font for an individual users, perform
the following steps:</para>
    <orderedlist>
      <listitem>
        <para>Copy the font file to the <filename>$HOME/.fonts</filename>
directory of the user. If you drag the font file to the <literal>fonts:///</literal> location in the file manager, the font file is copied to the <filename>$HOME/.fonts</filename> directory.</para>
      </listitem>
      <listitem>
        <para>The <literal>fontconfig</literal> library updates the list
of fonts automatically. If the list of fonts is not updated, run the following
command:</para>
        <screen><userinput>fc-cache <replaceable>directory-name</replaceable></userinput></screen>
      </listitem>
    </orderedlist>
  </sect1>
</chapter>


<chapter id="mimetypes-0">
  <title>MIME Types</title>
  <anchor id="mimetypes-TBL-3"/>
  <anchor id="mimetypes-TBL-6"/>
  <anchor id="mimetypes-TBL-8"/>

  <highlights>
    <para>This chapter describes how applications detect MIME types, how to
    register MIME types, and how to add applications to the GNOME
    Desktop.</para>
  </highlights>

  <para>The purpose of this chapter is to make it easy for an administrator to
  understand how to configure different parts of the MIME database and give an
  general overview of the MIME system. Therefore we will
  <emphasis>not</emphasis> attempt to go into details where it is not
  necessary. For the gory details, it is recommended that you refer to the
  <ulink url="http://www.freedesktop.org/Standards/shared-mime-info-spec">XDG
  shared mime info specification</ulink>.</para>

  <sect1 id="mimetypes-intro">
    <title>Introduction to MIME Types</title>
    <anchor id="mimetypes-1"/>

    <indexterm>
      <primary>MIME types</primary>

      <secondary>개요</secondary>
    </indexterm>

    <para>A <firstterm>Multipurpose Internet Mail Extension</firstterm>
    [<acronym>MIME</acronym>] type identifies the format of a file.
    Applications such as Internet browsers and email applications use the MIME
    type of a file to decide which actions to perform on it. For example, an
    email application can use the MIME type to detect the format of an
    attachment and choose an appropriate viewer for the file, such as opening
    a text document with <application>gedit</application>.</para>

    <para>As another example, the <application>Nautilus</application> file
    manager needs to know the MIME type of a file to perform the following
    tasks:</para>

    <itemizedlist>
      <listitem>
        <para>Open the file in an appropriate application.</para>
      </listitem>

      <listitem>
        <para>Display a string that describes the type of file.</para>
      </listitem>

      <listitem>
        <para>Display an appropriate icon to represent the file.</para>
      </listitem>

      <listitem>
        <para>Display a list of other applications that can open the
        file.</para>
      </listitem>
    </itemizedlist>

    <para>MIME types were originally proposed as a standard for identifying
    the message body of an e-mail message. Now, many systems use MIME types to
    identify the format of arbitrary files on the file system. MIME types are
    composed of a top-level <emphasis>media type</emphasis> followed by a
    <emphasis>subtype identifier</emphasis>, separated by a forward slash
    character, <quote><literal>/</literal></quote>. One example of a MIME type
    is <literal>image/jpeg</literal>. The media type in this example is
    <quote><literal>image</literal></quote> and the subtype identifier is
    <quote><literal>jpeg</literal></quote>. The top-level media type is meant
    to be a general categorization about the content of the file, while the
    subtype identifer is meant to specifically identify the format of the
    file.</para>

    <para>There are eight media types currently blessed by the
    <acronym>IANA</acronym> [Internet Assigned Naming Authority]. These eight
    media types are <simplelist type="inline">
        <member>application</member>

        <member>audio</member>

        <member>image</member>

        <member>message</member>

        <member>model</member>

        <member>multipart</member>

        <member>text</member>

        <member>video</member>
      </simplelist>. Many subtypes exist for each media type; for more
    information, see <ulink url="http://www.iana.org/assignments/media-types/">MIME Media
    Types</ulink> at the <ulink url="http://www.iana.org/">IANA</ulink> web
    site.</para>

    <para>Implementation of MIME types in GNOME follows the <ulink url="http://www.freedesktop.org/Standards/shared-mime-info-spec">XDG
    shared mime info specification</ulink>. This specification provides the
    following advantages:</para>

    <itemizedlist>
      <listitem>
        <para>Standard locations for all MIME related files.</para>
      </listitem>

      <listitem>
        <para>A standard way for applications to register information about a
        new MIME type.</para>
      </listitem>

      <listitem>
        <para>A standard way to retrieve the MIME type for a file.</para>
      </listitem>

      <listitem>
        <para>A standard way to retrieve information about a MIME type.</para>
      </listitem>
    </itemizedlist>

    <para>The rest of the chapter describes the files and directories that
    make up the MIME database, details about source XML files, how to create
    or modify MIME types, how to register applications as handlers for certain
    MIME types and finally, how to add an application to the GNOME
    desktop.</para>
  </sect1>

  <sect1 id="mimetypes-database">
    <title>The MIME Database</title>
    <anchor id="mimetypes-4"/>
    <anchor id="mimetypes-5"/>

    <indexterm>
      <primary>MIME types</primary>

      <secondary>database</secondary>
    </indexterm>

    <para>The MIME database is a collection of files that make up:</para>

    <itemizedlist>
      <listitem>
        <para>The set of known MIME types</para>
      </listitem>

      <listitem>
        <para>The method for determing the MIME type of a file</para>
      </listitem>

      <listitem>
        <para>Meta information regarding a MIME type, such as a human readable
        description to use when displaying files of this type.</para>
      </listitem>
    </itemizedlist>

    <sect2 id="mimetypes-location">
      <title>Location</title>

      <para>As an administrator, the most important and basic step to
      understanding the MIME system is learning the locations where these
      files are stored. Since the <ulink url="http://www.freedesktop.org/Standards/shared-mime-info-spec">XDG
      shared mime info specification</ulink> was drafted by the X Desktop
      Group, it also makes use of the <ulink url="http://www.freedesktop.org/wiki/Standards/basedir-spec">XDG base
      directory specification</ulink>. It is highly recommended that you
      familiarize yourself with this specification, as it is also important
      for other system administration tasks such as editing menus. A brief
      summary of the directory locations as pertaining to the MIME
      specification is given below.</para>

      <para>The MIME database is created from the set of files located in the
      <filename>$XDG_DATA_HOME/mime</filename> and
      <filename>$XDG_DATA_DIRS/mime</filename> directories. If
      these environment variables are unset, then they default to the values
      <filename>~/.local/share</filename> and
      <filename>/usr/local/share:/usr/share</filename> respectively. As can be
      seen from the default value for <envar>$XDG_DATA_DIRS</envar> , each
      environment variable is actually a colon separated list of directories.
      The user's database at
      <filename>$XDG_DATA_HOME/mime</filename> has precedence
      over the system database at
      <filename>$XDG_DATA_DIRS/mime</filename> when conflicting
      definitions are encountered. Similar to the <citetitle>XDG shared mime
      specification</citetitle>, we will refer to this set of directories as
      <literal>&lt;MIME&gt;</literal> in the rest of this document.</para>

      <para>For example, assuming default paths for the environment variables,
      <quote>Load
      <filename>&lt;MIME&gt;/text/plain.xml</filename></quote>
      means to load the following files:</para>

      <itemizedlist>
        <listitem>
          <para><filename>~/.local/share/mime/text/plain.xml</filename></para>
        </listitem>

        <listitem>
          <para><filename>/usr/local/share/mime/text/plain.xml</filename></para>
        </listitem>

        <listitem>
          <para><filename>/usr/share/mime/text/plain.xml</filename></para>
        </listitem>
      </itemizedlist>
    </sect2>

    <sect2 id="mimetypes-contents">
      <title>Contents</title>

      <para>The following is a list of directories and files that are found
      inside the MIME database along with brief descriptions:</para>

      <variablelist>
        <varlistentry>
          <term><filename>&lt;MIME&gt;/packages/</filename></term>

          <listitem>
            <para>This directory contains any number of XML files, each of
            which describe a collection of MIME types. By default, the
            <filename>freedesktop.org.xml</filename> file is installed in the
            <filename>/usr/share/mime/packages</filename> directory. This file
            contains all the default MIME types that are widely used and
            recognized.</para>

            <para>Applications which provide information about new MIME types
            are to install a <emphasis>single</emphasis> new XML file here.
            Depending on the prefix where the application is installed, it
            will create the file in the <filename>/mime/package</filename>
            subdirectory of one of the directories in
            <envar>$XDG_DATA_HOME:$XDG_DATA_DIRS</envar>. For example, an
            application installed to <filename>/usr/bin</filename> should
            install a new source XML file to the
            <filename>/usr/share/mime/packages</filename> directory. For more
            information about the XML files in the
            <filename>packages</filename> directory, please see <xref linkend="mimetypes-source-xml"/>.</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><filename>&lt;MIME&gt;/<replaceable>MEDIA</replaceable>/<replaceable>SUBTYPE</replaceable>.xml</filename></term>

          <listitem>
            <para>These directories and files are automatically generated from
            the collection of source XML files in the
            <filename>&lt;MIME&gt;/packages/</filename> subdirectory by the
            <application>update-mime-database</application> application. For
            example, for each <literal>mime-type</literal> element in the
            <filename>/usr/share/mime/packages/freedesktop.org.xml</filename>
            file, a directory is created at
            <filename>/usr/share/mime/</filename> with the <emphasis>media
            type</emphasis> of the MIME type. An XML file is created in that
            directory with the <emphasis>subtype identifier</emphasis> of that
            MIME type as well. The contents of the created XML file include
            comments (and translations for them), subclasses designations and
            aliases.</para>

            <example>
              <title>Example:
              <filename>/usr/share/mime/text/plain.xml</filename> file</title>

              <para><programlisting>&lt;?xml version='1.0' encoding='utf-8'?&gt;
&lt;mime-type xmlns="http://www.freedesktop.org/standards/shared-mime-info" type="text/plain"&gt;
&lt;!--Created automatically by update-mime-database. DO NOT EDIT!--&gt;
  &lt;comment&gt;plain text document&lt;/comment&gt;
  &lt;!-- possibly more translations --&gt;
  &lt;comment xml:lang="es"&gt;documento de texto sencillo&lt;/comment&gt;
  &lt;comment xml:lang="eu"&gt;testu soileko dokumentua&lt;/comment&gt;
  &lt;comment xml:lang="fi"&gt;perustekstiasiakirja&lt;/comment&gt;
  &lt;comment xml:lang="fr"&gt;document plein texte&lt;/comment&gt;
  &lt;!-- possibly more translations --&gt;
&lt;/mime-type&gt;
</programlisting>This file is generated by the
              <application>update-mime-database</application> application,
              using the default source XML file
              <filename>freedesktop.org.xml</filename>.</para>
            </example>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><filename>&lt;MIME&gt;/globs</filename></term>

          <listitem>
            <para>Contains one line with a MIME type and a glob pattern,
            separated by a colon. Files which match the glob pattern are
            resolved to the MIME type specified before the colon. There are
            special rules about how filenames are matched by the glob pattern;
            for more details see the <citetitle>XDG shared mime
            specification</citetitle>.</para>

            <para>This file is also generated by the
            <application>update-mime-database</application> application, using
            the default source XML file
            <filename>freedesktop.org.xml</filename>.</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><filename>&lt;MIME&gt;/magic</filename></term>

          <listitem>
            <para>A binary file which contains information on how to resolve
            MIME types by <quote>sniffing</quote> the content of the file.
            This is generally a set of one or more rules such as <quote>check
            for the string <literal>%PDF- </literal>at byte offset 0 in the
            file; if found, assign it the MIME type
            <literal>application/pdf</literal></quote>.</para>

            <para>This file is also generated by the
            <application>update-mime-database</application>
            application.</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><filename>&lt;MIME&gt;/XMLnamespaces</filename></term>

          <listitem>
            <para>Contains a mapping of XML namespaces to MIME types. Each
            line contains three fields, the namespace, the localName and the
            MIME type. Each field is separated by a space. If the localName is
            empty, then there are two spaces between the namespace and the
            MIME type.</para>

            <para>This file is also generated by the
            <application>update-mime-database</application>
            application.</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><filename>&lt;MIME&gt;/aliases</filename></term>

          <listitem>
            <para>Contains a list of aliases for each MIME type. An alias is
            simply a MIME type that is sometimes known as another type. For
            each line in this file there are two fields: the first field is
            the alias name, and the second field is the MIME type. The fields
            are separated by a space.</para>

            <para>This file is also generated by the
            <application>update-mime-database</application>
            application.</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><filename>&lt;MIME&gt;/subclasses</filename></term>

          <listitem>
            <para>Contains a list of subclassed MIME types and their
            <quote>parent</quote> MIME type. From the <citetitle>XDG shared
            mime specification:</citetitle><blockquote>
                <para>A type is a subclass of another type if any instance of
                the first type is also an instance of the second. For example,
                all image/svg files are also text/xml, text/plain and
                application/octet-stream files. Subclassing is about the
                format, rather than the catagory of the data (for example,
                there is no 'generic spreadsheet' class that all spreadsheets
                inherit from).</para>
              </blockquote>The format of this file is similar to the
            <filename>aliases</filename> file. Each line contains two fields,
            where the first field is the subclassed MIME type and the second
            field is the parent MIME type. Each field is separated by a
            space.</para>

            <para>This file is also generated by the
            <application>update-mime-database</application>
            application.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </sect2>

    <sect2 id="mimetypes-refresh">
      <title>Refreshing the MIME Database</title>

      <para>Understanding how to refresh the MIME database is important for
      administrators who wish to add new MIME types to the system, or
      otherwise modify information about a MIME type. The application
      <application>update-mime-database</application> is intended for this
      purpose.</para>

      <para>For example, if an application installs information about a new
      MIME type to <filename>/usr/share/mime/packages/diff.xml</filename>,
      then <application>update-mime-database</application> must be called with
      the parameter <filename>/usr/share/mime</filename>.</para>

      <screen><prompt>#</prompt> <userinput>update-mime-database /usr/share/mime</userinput>
<computeroutput>***
* Updating MIME database in /usr/share/mime...
***
</computeroutput></screen>

      <para>The MIME database is refreshed by scanning all the source XML
      files in the directory
      <filename>&lt;MIME&gt;/packages</filename>.</para>
    </sect2>
  </sect1>

  <sect1 id="mimetypes-source-xml">
    <title>The source XML files</title>
    <anchor id="mimetypes-11"/>
    <anchor id="mimetypes-12"/>
    <anchor id="mimetypes-2"/>

    <indexterm>
      <primary>MIME types</primary>

      <secondary>source XML files</secondary>
    </indexterm>

    <para>Located in the <filename>&lt;MIME&gt;/packages</filename> directory,
    these XML files provide all the information regarding MIME types that is
    installed into the database by the
    <application>update-mime-database</application> application. There are a
    few rules about the XML file itself:</para>

    <itemizedlist>
      <listitem>
        <para>It must specify the namespace as
        <quote><literal>http://www.freedesktop.org/standards/shared-mime-info</literal></quote></para>
      </listitem>

      <listitem>
        <para>The root element must be <literal>mime-info</literal></para>
      </listitem>

      <listitem>
        <para>Zero or more <literal>mime-type</literal> elements can be
        specified as children of the <literal>mime-info</literal> element. The
        <literal>type</literal> attribute is used to specify the MIME type
        that is being defined.</para>
      </listitem>
    </itemizedlist>

    <para>By default, the <filename>freedesktop.org.xml</filename> file is
    installed to the <filename>packages</filename> directory in one of the
    <filename>&lt;MIME&gt;</filename> paths (usually
    <filename>/usr/share/mime/packages</filename>).</para>

    <para><xref linkend="mimetypes-mimeinfo-elements"/> gives a brief
    description for each of the elements that can occur as children to the
    <literal>mime-type</literal> element.</para>

    <table frame="topbot" id="mimetypes-mimeinfo-elements">
      <title>Child elements of <literal>&lt;mime-info&gt;</literal></title>

      <tgroup cols="2" colsep="0" rowsep="0">
        <colspec colwidth="44.90*"/>

        <colspec colwidth="59.10*"/>

        <thead>
          <row rowsep="1">
            <entry>Element (and attributes)</entry>

            <entry>설명</entry>
          </row>
        </thead>

        <tbody>
          <row>
            <entry><literal>&lt;glob
            pattern="<replaceable>*.xyz</replaceable>"&gt;</literal></entry>

            <entry>This element specifies a glob pattern against filenames. If
            the filename matches, then it is assigned the MIME type of the
            parent <literal>mime-type</literal> element. The
            <literal>pattern</literal> attribute is mandatory.</entry>
          </row>

          <row>
            <entry><literal>&lt;magic
            priority="<replaceable>50</replaceable>"&gt;</literal></entry>

            <entry>This element contains a list of <literal>match</literal>
            elements as its children. The <literal>priority</literal>
            attribute is optional, and specifies a priority between 0 and 100,
            with 100 being the highest matching priority. Each child
            <literal>match</literal> element has three required attributes:
            <simplelist type="inline">
                <member><literal>type</literal></member>

                <member><literal>offset</literal></member>

                <member><literal>값</literal></member>
              </simplelist> and a fourth optional attribute,
            <literal>mask</literal>. For details on these attributes, see the
            <ulink url="http://www.freedesktop.org/Standards/shared-mime-info-spec">XDG
            shared mime info specification</ulink>.</entry>
          </row>

          <row>
            <entry><literal>&lt;alias
            type="<replaceable>media</replaceable>/<replaceable>subtype</replaceable>"&gt;</literal></entry>

            <entry>This element defines an alias for the parent
            <literal>mime-type</literal> element. An alias is simply a MIME
            type that is sometimes known as another type. For example,
            <literal>application/x-pdf</literal> is an alias for the MIME type
            <literal>application/pdf</literal>.</entry>
          </row>

          <row>
            <entry><literal>&lt;sub-class-of
            type="<replaceable>media</replaceable>/<replaceable>subtype</replaceable>"&gt;</literal></entry>

            <entry>This element defines the parent
            <literal>mime-type</literal> element as a subclass of the MIME
            type specified in the <literal>type</literal> attribute. For
            example, <literal>image/svg</literal> is a sub class of the MIME
            type <literal>text/xml</literal>, <literal>text/plain</literal>,
            and <literal>application/octet-stream</literal>.</entry>
          </row>

          <row>
            <entry><literal>&lt;comment
            xml:lang="<replaceable>locale</replaceable>"&gt;</literal></entry>

            <entry>This element provides a human readable description for the
            MIME type. There can be zero or more occurrences of this element
            as long as each one contains a unique value for the
            <literal>xml:lang</literal> attribute.</entry>
          </row>

          <row>
            <entry><literal>&lt;root-XML
            namespaceURI="<replaceable>namespace</replaceable>"
            localName=""&gt;</literal></entry>

            <entry>If a file is determined to an XML file, then this element
            helps to further classify it through the use of the
            <literal>namespaceURI</literal> and <literal>localName</literal>
            attributes, both of which are required. The attribute
            <literal>namespaceURI</literal> is the namespace of the document,
            and <literal>localName</literal> is the name of the root element
            for the document. If <literal>localName</literal> is present but
            its value is empty, then the root element may have any name, but
            the namespace must still match.</entry>
          </row>
        </tbody>
      </tgroup>
    </table>

    <para>The easiest way to understand these files is to take a look at an
    example. Borrowing from the <citetitle>XDG shared mime
    specification</citetitle>, <xref linkend="mimetypes-source-xml-example"/>
    displays the contents of a source XML file called
    <filename>diff.xml</filename>. This example defines the MIME type
    <literal>text/x-diff</literal>. There are multiple
    <literal>comment</literal> elements which give a human readable name to
    the MIME type in a number of different languages. This MIME type has both
    rules for matching through glob patterns <emphasis>and</emphasis> through
    the use of content <quote>sniffing</quote> (better known as
    <filename>magic</filename> rules). Any file with the extension
    <literal>.diff</literal> or <filename>.patch</filename> will resolve to
    this MIME type. Additionally any file whose contents start with the
    strings specified in the <literal>value</literal> attributes of the
    <literal>match</literal> element, will resolve to the
    <literal>text/x-diff</literal> MIME type.</para>

    <para>The order in which glob patterns and magic rules apply is beyond the
    scope of this document. For details on this, see the <ulink url="http://www.freedesktop.org/Standards/shared-mime-info-spec">XDG
    shared mime info specification</ulink>.</para>

    <example id="mimetypes-source-xml-example">
      <title>Example of a source XML file:
      <filename>diff.xml</filename></title>

      <programlisting>&lt;?xml version='1.0'?&gt;
&lt;mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'&gt;
  &lt;mime-type type="text/x-diff"&gt;
    &lt;comment&gt;Differences between files&lt;/comment&gt;
    &lt;comment xml:lang="af"&gt;verskille tussen lêers&lt;/comment&gt;
    &lt;!-- more translated comment elements --&gt;
    &lt;magic priority="50"&gt;
      &lt;match type="string" offset="0" value="diff\t"/&gt;
      &lt;match type="string" offset="0" value="***\t"/&gt;
      &lt;match type="string" offset="0" value="Common subdirectories: "/&gt;
    &lt;/magic&gt;
    &lt;glob pattern="*.diff"/&gt;
    &lt;glob pattern="*.patch"/&gt;
  &lt;/mime-type&gt;
&lt;/mime-info&gt;</programlisting>
    </example>
  </sect1>

  <sect1 id="mimetypes-modifying">
    <title>Modifying MIME types</title>

    <indexterm>
      <primary>MIME types</primary>

      <secondary>verifying changes</secondary>
    </indexterm>

    <indexterm>
      <primary>MIME types</primary>

      <secondary>modifying</secondary>
    </indexterm>

    <para>You should never directly modify the source XML files that are
    installed to the <filename>&lt;MIME&gt;/packages</filename> directory by
    applications. Instead, modify the <filename>Overrides.xml</filename> file.
    This file has precedence over all other source XML files installed into
    the same <filename>packages</filename> directory. If you are an
    application author, then this rule does not apply. You should create a new
    source XML file and place it in the proper
    <filename>&lt;MIME&gt;/packages</filename> directory (your
    <filename>Makefile</filename> will take care of this, of course).</para>

    <para>You can modify the MIME database for all users on the system or for
    a particular user depending on the location of the file you change. To
    modify the database for all users, make changes to the file
    <filename>Overrides.xml</filename> in the
    <filename>$XDG_DATA_DIRS/mime/packages</filename>
    directory. To modify the database for a single user, make changes to the
    file <filename>Overrides.xml</filename> in the
    <filename>$XDG_DATA_HOME/mime/packages</filename>
    directory.</para>

    <para>After changes are made, you must always run the
    <application>update-mime-database</application> application, with the
    directory location of the MIME database as the first parameter.</para>

    <sect2 id="mimetypes-addmodify">
      <title>Adding or Modifying MIME types</title>

      <para>To add one or more MIME types for all users:</para>

      <orderedlist>
        <listitem>
          <para>Create or modify an existing
          <filename>Overrides.xml</filename> source XML file, containing the
          definitions for the MIME types. For more information, see <xref linkend="mimetypes-source-xml"/>.</para>
        </listitem>

        <listitem>
          <para>Place the <filename>Overrides.xml</filename> file in the
          <filename>/usr/share/mime/packages</filename> directory.</para>
        </listitem>

        <listitem>
          <para>Update the MIME database by running
          <application>update-mime-database</application> using the system
          account.<screen><userinput>update-mime-database /usr/share/mime</userinput></screen></para>
        </listitem>
      </orderedlist>

      <para>To add one or more MIME types for a single user, follow the same
      steps, except place your <filename>Overrides.xml</filename> file in the
      <filename>~/.local/share/mime/packages</filename> directory.
      Additionally, call <application>update-mime-database</application> with
      <filename>~/.local/share/mime/packages</filename> as the first
      parameter.</para>
    </sect2>

    <sect2 id="mimetypes-verifying">
      <title>Verifying Changes</title>
      <anchor id="mimetypes-10"/>

      <para>After you have made a change to the MIME database and refreshed
      its contents, you can verify that the change has taken effect using the
      <application>gnomevfs-info</application> application. This application
      prints the MIME type and other useful information about a file.</para>

      <para>Running <application>gnomevfs-info</application> on a SVG file
      gives you the output shown below. You'll notice the default application
      for this MIME type is <filename>eog.desktop</filename>; We will discuss
      default applications in <xref linkend="mimetypes-registering"/>.</para>

      <screen><prompt>$</prompt> <userinput>gnomevfs-info mime-diagram.svg</userinput>
<computeroutput>Name              : mime-diagram.svg
Type              : Regular
MIME type         : image/svg+xml
Default app       : eog.desktop
Size              : 14869
Blocks            : 32
I/O block size    : 4096
Local             : YES
SUID              : NO
SGID              : NO
Sticky            : NO
Permissions       : 600644
Link count        : 1
UID               : 1000
GID               : 100
Access time       : Wed Feb 22 18:24:47 2006
Modification time : Wed Feb 22 18:24:42 2006
Change time       : Wed Feb 22 18:24:42 2006
Device #          : 775
Inode #           : 297252
Readable          : YES
Writable          : YES
Executable        : NO</computeroutput>
<prompt>$</prompt>
</screen>

      <para><xref linkend="mimetypes-newtype-example"/> walks through the steps of
      creating a new MIME type and then verifying the changes using
      <application>gnomevfs-info</application>.</para>
    </sect2>

    <sect2 id="mimetypes-newtype-example">
      <title><literal>application/x-newtype</literal> Example</title>

      <para>To create (or override) a MIME type and verify the changes:</para>

      <orderedlist>
        <listitem>
          <para>Make a new, empty file in your home directory called
          <filename>testing.xyz</filename>.</para>
        </listitem>

        <listitem>
          <para>Use <application>gnomevfs-info</application> on the file to
          find out the MIME type.The MIME type for this file should be
          detected as <literal>text/plain</literal> because there are not any
          glob patterns or magic rules that match it<footnote>
              <para>When no glob patterns or magic rules match a file, then it
              is resolved to the MIME type <literal>text/plain</literal> if it
              contains textual data or
              <literal>application/octet-stream</literal> for binary data. If
              the file is empty, then it defaults to
              <literal>text/plain</literal>.</para>
            </footnote>.</para>
        </listitem>

        <listitem>
          <para>Create (or modify) the <filename>Overrides.xml</filename> file
          as described in <xref linkend="mimetypes-addmodify"/> with the
          contents given in <xref linkend="mimetypes-overrides-xml"/>.</para>
        </listitem>

        <listitem>
          <para>Refresh the database using
          <application>update-mime-database</application>.</para>
        </listitem>

        <listitem>
          <para>Use <application>gnomevfs-info</application> to verify that
          your change has taken effect. You should see the MIME type for the
          <filename>testing.xyz</filename> file resolved as
          <literal>application/x-newtype</literal>.</para>

          <screen><prompt>$</prompt> <userinput>gnomevfs-info testing.xyz | grep MIME
</userinput><computeroutput>MIME type         : application/x-newtype
</computeroutput><prompt>$</prompt></screen>
        </listitem>
      </orderedlist>

      <example id="mimetypes-overrides-xml">
        <title><filename>Overrides.xml</filename> file</title>

        <programlisting>&lt;?xml version='1.0' encoding='utf-8'?&gt;
&lt;mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"&gt;
  &lt;mime-type type="application/x-newtype"&gt;&lt;comment&gt;new mime type&lt;/comment&gt;&lt;glob pattern="*.xyz"/&gt;&lt;/mime-type&gt;
&lt;/mime-info&gt;</programlisting>
      </example>
    </sect2>
  </sect1>

  <sect1 id="mimetypes-registering">
    <title>Registering Applications for MIME Types</title>

    <anchor id="mimetypes-7"/>

    <indexterm>
      <primary>MIME types</primary>

      <secondary>registering applications for</secondary>
    </indexterm>

    <indexterm>
      <primary>applications</primary>

      <secondary>registry</secondary>
    </indexterm>

    <para>Registering applications to handle MIME types is fairly
    straightforward. Applications are registered by creating a
    <literal>MimeType</literal> key in their <filename>.desktop</filename>
    entry file and listing each MIME type separated by a semicolon. The
    <literal>MimeType</literal> key should only be used in
    <filename>.desktop</filename> files whose <literal>Type</literal> key has
    the value <quote><literal>Application</literal></quote>. For more
    information on <filename>.desktop</filename> files, see <xref linkend="menustructure-desktopentry"/>.</para>

    <para>After creating or modifying a <filename>.desktop</filename> entry
    file, you must update the application database using the
    <application>update-desktop-database</application> application (very
    similar to <application>update-mime-database</application>, except it does not take a
    parameter). This will create a
    <filename>mimeinfo.cache</filename> file in the
    <filename>applications</filename> subdirectory for each directory in
    <filename>$XDG_DATA_HOME:$XDG_DATA_DIRS</filename>.
    The cache file is necessary so that all the <filename>.desktop</filename>
    files do not need to be scanned for just the <literal>MimeType</literal>
    key, as this causes unnecessary disk I/O.</para>

    <para>Default applications to use for specific MIME types should be
    specified in a file called <filename>defaults.list</filename>. This file
    is located in the <filename>applications</filename> subdirectory for each
    directory in <envar>$XDG_DATA_HOME</envar> and
    <envar>$XDG_DATA_DIRS</envar>. The format for this file consists of the
    MIME type, the <literal>=</literal> symbol and the Desktop File ID (which
    is the filename for the desktop entry file). <xref linkend="mimetypes-registering-example"/> is a short example of a
    <filename>defaults.list</filename> file in a user's
    <filename>~/.local/share/applications</filename> directory.</para>

    <example id="mimetypes-registering-example">
      <title>A User's <filename>defaults.list</filename> file</title>

      <programlisting>[Default Applications]
application/pdf=evince.desktop
text/html=epiphany.desktop
text/plain=gedit.desktop
image/jpeg=eog.desktop
image/png=eog.desktop
text/xml=gedit.desktop
</programlisting>
    </example>

    <note>
      <title>XDG Desktop Entry Specification</title>

      <para>How to register MIME types for applications is part of the <ulink url="http://www.freedesktop.org/wiki/Standards/desktop-entry-spec">XDG desktop entry specification</ulink>, rather than the
      <ulink url="http://www.freedesktop.org/Standards/shared-mime-info-spec">XDG
      shared mime info specification</ulink>.</para>
    </note>
  </sect1>

  <sect1 id="mimetypes-9">
    <title>Adding an Application to the GNOME Desktop</title>

    <indexterm>
      <primary>MIME types</primary>

      <secondary>adding applications</secondary>
    </indexterm>

    <indexterm>
      <primary>applications</primary>

      <secondary>더하기</secondary>
    </indexterm>

    <para>To add an application to the GNOME Desktop, perform the following
    steps:</para>

    <orderedlist>
      <listitem>
        <para>Add a menu item for the application. For more information on how
        to add an item to a menu, see <xref linkend="menustructure-2"/>.</para>
      </listitem>

      <listitem>
        <para>Add an icon for the application to
        <filename>/usr/share/icons/<replaceable>theme-name</replaceable>/<replaceable>icon-size</replaceable>/apps</filename>.
        For more information on icons and themes, see <xref linkend="themes-11"/>.</para>
      </listitem>

      <listitem>
        <para>If the application uses a new MIME type, add a source XML file
        to the MIME database. For more information, see <xref linkend="mimetypes-modifying"/>.</para>
      </listitem>

      <listitem>
        <para>If the application uses a new MIME type, add an icon for the
        MIME type to
        <filename>/usr/share/icons/<replaceable>theme-name</replaceable>/<replaceable>icon-size</replaceable>/mimetypes</filename>.
        For more information on icons and themes, see <xref linkend="themes-0"/>.</para>
      </listitem>

      <listitem>
        <para>To associate the application with a MIME type, include a
        <literal>MimeType</literal> key in your <filename>.desktop</filename>
        file. For more information, see <xref linkend="mimetypes-registering"/>.</para>
      </listitem>
    </orderedlist>
  </sect1>
</chapter>

<chapter id="screensavers-0">
  <title>Setting Screensavers</title>
  <highlights>
    <para>This chapter describes how to set preferences for the screensaver.
This chapter also provides information on how to modify the displays that
are available for the screensaver.</para>
  </highlights>
  <sect1 id="screensavers-1">
    <title>Introduction to Screensavers</title>
    <indexterm>
      <primary>screensavers</primary>
      <secondary>개요</secondary>
    </indexterm>
    <indexterm>
      <primary>gnome-screensaver</primary>
      <see>screensavers</see>
    </indexterm>
    <para>A <firstterm>screensaver</firstterm> is an application that
replaces the image on a screen when the screen is not in use. The screensaver
application for the GNOME Desktop is <application>gnome-screensaver</application>.
The following sections describe how to set preferences for the <application>gnome-screensaver</application> application, and how to change the themes that
are available for the screensaver.</para>
  </sect1>
  <sect1 id="screensavers-2">
    <title>Setting Screensaver Preferences</title>
    <indexterm>
      <primary>screensavers</primary>
      <secondary>setting preferences</secondary>
    </indexterm>
    <para>All screensaver preferences and settings are stored in <application>GConf</application>.</para>
    <para>To modify screensaver application preferences, users can use the <application>Screensaver</application> preference tool.  For information on screensaver preferences, see <citetitle>GNOME Desktop User's Guide</citetitle>.</para>
    <para>Users can also run the command <command>/usr/bin/gnome-screensaver-preferences</command> to open
the <guilabel>Screensaver Preferences</guilabel> dialog.</para>
    <para>To set default screensaver settings and policy for all users, modify the screensaver settings in the Default GConf Configuration Source.</para>
    <para>To set mandatory screensaver settings and policy for all users, modify the screensaver settings in the Mandatory GConf Configuration Source.</para>
  </sect1>
  <sect1 id="screensavers-3">
    <title>Modifying Screensaver Themes</title>
    <indexterm>
      <primary>screensavers</primary>
      <secondary>modifying screensaver themes</secondary>
    </indexterm>
    <para>The screensaver application allows users
to choose one or more <firstterm>screensaver themes</firstterm>. A screensaver
theme is an application that displays images on the screen of the user when
the screen is not in use. The available screensaver themes are listed in the <application>Screensaver</application> preference tool.</para>
    <para>To add a new screensaver theme, copy the executable file for the <firstterm>screensaver theme engine</firstterm> to somewhere in your PATH or into the
screensaver theme engine executable directory.  The screensaver theme engine executable directory for your system can be determined using the following command:
<screen><userinput>pkg-config --variable=privlibexecdir gnome-screensaver</userinput></screen>

Next, add a <filename>.desktop</filename> file for the theme into the screensaver themes directory.  The screensaver themes directory for your system
can be determined using the following command:
<screen><userinput>pkg-config --variable=themesdir gnome-screensaver</userinput></screen>

In the Exec field of the <filename>.desktop</filename> file include any arguments that are required to run the screensaver
theme on the whole screen, rather than in a window.  For example, some legacy screensaver theme engines may require you 
to include the <literal>-root</literal> option to display the screensaver
display on the whole screen.</para>
    <para>The <application>Screensaver</application> infrastructure implements themes according to the <ulink url="http://www.freedesktop.org/wiki/Standards/menu-spec">XDG menu
    specification</ulink>. By supporting this specification, GNOME allows you
    to:</para>

    <itemizedlist>
      <listitem>
        <para>Customize the themes easily. You can edit a small number
        of files to customize the available themes. You do not need to modify
        your applications or move files.</para>
      </listitem>

      <listitem>
        <para>Install themes easily. You do not need to provide
        information about the system when you install
        the themes.</para>
      </listitem>

      <listitem>
        <para>Configure the system so that users cannot modify the themes.</para>
      </listitem>
    </itemizedlist>

  <para>For more information, see <xref linkend="menustructure-0"/>.</para>

  </sect1>
</chapter>

<chapter id="sessions-0">
  <title>Session Management</title>
  <highlights>
    <para>This chapter introduces session management, and describes
how to set session defaults. The chapter also contains information on sessions
and login scripts.</para>
  </highlights>
  <sect1 id="sessions-1">
    <title>Introduction to Sessions</title>
    <indexterm>
      <primary>sessions</primary>
      <secondary>개요</secondary>
    </indexterm>
    <para>A session occurs between the time that a user logs in to
the GNOME Desktop and the time that the user logs out. The session manager
starts after the <application>Login Manager</application> authenticates the
user. The session manager enables the user to manage the session. For example,
a user can save the state of a session and return to that session the next
time that the user logs in. </para>
    <para>At a minimum, the following applications run in a session:</para>
    <itemizedlist>
      <listitem>
        <para>The session manager, <command>gnome-session</command>.</para>
      </listitem>
      <listitem>
        <para>The <application>GConf</application> X settings daemon, <command>gnome-settings-daemon</command>.</para>
      </listitem>
      <listitem>
        <para>The <application>gnome-panel</application> application, which
runs the panels in the GNOME Desktop.</para>
      </listitem>
      <listitem>
        <para>The <application>Metacity</application> window manager.</para>
      </listitem>
    </itemizedlist>
  </sect1>
  <sect1 id="sessions-3">
    <title>Setting Session Defaults</title>
    <indexterm>
      <primary>sessions</primary>
      <secondary>setting defaults</secondary>
    </indexterm>
    <para>The following table lists the files that contain default
session information:</para>
    <informaltable frame="topbot">
      <tgroup cols="2" colsep="0" rowsep="0">
        <colspec colwidth="51.80*"/>
        <colspec colwidth="48.20*"/>
        <thead>
          <row rowsep="1">
            <entry>
              <para>File</para>
            </entry>
            <entry>
              <para>설명</para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry valign="top">
              <para>
                <filename>/usr/share/gnome/default.session</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Default session file.
Default session details are stored in this file.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>$HOME/.gnome2/session</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>User session file. When a user modifies the session,
the details are stored in this file.</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </informaltable>
<!--The last row does not appear to be true in Mercury - check.-->
    <para>To set default session details for all users, modify the default session
file. </para>
    <para>To restore the default session settings for a user, delete the session
file from the home directory of the user. If no user session file is present,
the default settings in <filename>/usr/share/gnome/default.session</filename>
are used. </para>
    <para>To save the current session as the default session, users can run the <command>gnome-session-save</command> command. </para>
  </sect1>
</chapter>

<chapter id="help-0">
  <title>Help System</title>
  <highlights>
    <para>This chapter describes the Help system in the GNOME Desktop.</para>
  </highlights>
  <sect1 id="help-1">
    <title>Introduction to the Help System</title>
    <indexterm>
      <primary>online Help</primary>
      <see>Help</see>
    </indexterm>
    <indexterm>
      <primary>Help</primary>
      <secondary>개요</secondary>
    </indexterm>
    <para>The GNOME Desktop displays help in the <application>Yelp</application> Help
browser. For more information, see <ulink url="ghelp:user-guide?yelp">Yelp Help Browser</ulink> in the
<ulink url="ghelp:user-guide">GNOME Desktop User Guide</ulink>.</para>
<para>The source documents for the help are XML files. The XML files are
written to the DocBook XML Version 4.1.2 document type definition (DTD). The
DocBook XML files are converted to HTML using stylesheets installed with <application>
gnome-doc-utils</application> and the HTML is displayed in the
help browser. For more information on DocBook XML, see the following URL:</para>
    <literallayout>
      <ulink url="http://www.oasis-open.org/docbook/xml/">http://www.oasis-open.org/docbook/xml</ulink>
    </literallayout>
    <para>The Help system uses <firstterm>Open Source Metadata Framework</firstterm>
(OMF) files, and a cataloging system. The next sections describe OMF files
and the cataloging system.</para>
  </sect1>
  <sect1 id="help-3">
    <title>OMF Files</title>
    <indexterm>
      <primary>.omf files</primary>
      <see>OMF files</see>
    </indexterm>
    <indexterm>
      <primary>Help</primary>
      <secondary>OMF files</secondary>
    </indexterm>
    <indexterm>
      <primary>OMF files</primary>
    </indexterm>
    <para>The XML file for each manual
has an associated OMF file. The OMF file contains information about the manual
that is used by the Help browser. OMF files have a <filename>.omf</filename>
extension.</para>
    <para>When you install an application, the installation process installs an
OMF file to a directory of OMF files. If a Help document has an associated
OMF file in an OMF file directory, the Help document is displayed in the Help
browser.</para>
    <para>OMF files contain information about Help documents such as the following:</para>
    <itemizedlist>
      <listitem>
        <para>The location of the XML file for the Help document</para>
      </listitem>
      <listitem>
        <para>The title of the Help document</para>
      </listitem>
      <listitem>
        <para>A subject category to which the Help document belongs</para>
      </listitem>
    </itemizedlist>
    <para>For more information on how to create OMF files, please see 
    <ulink url="ghelp:writing_scrollkeeper_omf_files">Writing Scrollkeeper 
OMF Files</ulink>.</para>
  </sect1>
  <sect1 id="help-2">
    <title>ScrollKeeper Cataloging System</title>
    <indexterm>
      <primary>Help</primary>
      <secondary>ScrollKeeper cataloging system</secondary>
    </indexterm>
    <indexterm>
      <primary>ScrollKeeper cataloging system</primary>
    </indexterm>
    <para><application>ScrollKeeper</application> is a cataloging
system for documentation.  Its primary function is to manage the information in 
OMF files for the help browser.  When you install an application, the 
OMF file is copied to the <filename>
<replaceable>$prefix</replaceable>/share/omf/<replaceable>&lt;application-name&gt;</replaceable>
</filename> directory.
</para>

    <para><application>ScrollKeeper</application> builds a table of contents from the
collection of OMF files in the directories specified in 
<filename><replaceable>$prefix</replaceable>/etc/scrollkeeper.conf</filename> file. 
This file usually consists of a single line with the <varname>OMF_DIR</varname> 
set to a comma separated list of directories to recursively search.</para>

    <programlisting>OMF_DIR=/usr/share/omf:/usr/local/share/omf:/opt/gnome2/share/omf:/opt/kde/omf
</programlisting>

    <para><application>ScrollKeeper</application> contains a hierarchy of subject
categories to which a help document can belong. The subject category of the document 
in the OMF file determines the location of the document in the table of contents presented
by the help browser.</para>

    <para>The hierarchy of subject categories is defined in the file
<filename>
<replaceable>$prefix</replaceable>/scrollkeeper/Templates/<replaceable>&lt;lang&gt;</replaceable>/scrollkeeper_cl.xml</filename>. 
The subject category of a document must correspond to a category specified in this file.</para>

    <para>For more information on the <application>Scrollkeeper</application> system,
visit the website at 
<ulink url="http://scrollkeeper.sourceforge.net/">http://scrollkeeper.sourceforge.net/</ulink>.
</para>

    <note>
      <para>If the help document XML file is moved to a new location, then
the location in the OMF file needs to be updated.</para>
    </note>
  </sect1>
</chapter>

<chapter id="performance-0">
  <title>Improving Performance</title>
  <highlights>
    <para>This chapter describes how to improve the performance of
the GNOME Desktop.</para>
  </highlights>
  <sect1 id="performance-1">
    <title>Introduction to Improving Performance</title>
    <indexterm>
      <primary>performance, improving</primary>
      <secondary>개요</secondary>
    </indexterm>
    <para>This chapter lists several preferences whose
settings you can change to improve the performance of the GNOME Desktop. You
can use the <command>gconftool-2</command> command to set values for preferences
for users. The example commands in this chapter show how to set values in
the user configuration source.</para>
    <para>You can also use the <literal>--direct</literal> and <literal>--config-source</literal> options to set mandatory values or default values for preferences.
You can also use the <command>gconftool-2</command> command in a script to
set the values of many preferences. For more information on the  <command>gconftool-2</command> command and the options that are  available with the
command, see <xref linkend="gconf-0"/>.</para>
  </sect1>
  <sect1 id="performance-8">
    <title>Reducing CPU Usage</title>
    <indexterm>
      <primary>performance, improving</primary>
      <secondary>reducing CPU
usage</secondary>
    </indexterm>
    <indexterm>
      <primary>reducing</primary>
      <secondary>CPU usage</secondary>
    </indexterm>
    <indexterm>
      <primary>CPU usage</primary>
      <secondary>reducing</secondary>
    </indexterm>
    <para>This section describes preferences that
you can set to reduce CPU usage by the GNOME Desktop. </para>
    <sect2 id="performance-3">
      <title>To Use Theme Options Which Require Less CPU Resources</title>
      <indexterm>
        <primary>테마</primary>
        <secondary>창 가장자리 옵션</secondary>
        <tertiary>and CPU usage</tertiary>
      </indexterm>
      <indexterm>
        <primary>테마</primary>
        <secondary>and CPU usage</secondary>
      </indexterm>
      <para>Some window frame theme
options load image files to draw the window frame. Other options use simpler
techniques to draw the window frame.</para>
      <para>The Crux window frame option loads image files, and can be slow on systems
with limited CPU resources. To reduce CPU usage, use one of the following
window frame options: </para>
      <itemizedlist>
        <listitem>
          <para>Atlanta</para>
        </listitem>
        <listitem>
          <para>Esco</para>
        </listitem>
      </itemizedlist>
      <para>The following window frame options also use less CPU resources than
Crux:</para>
      <itemizedlist>
        <listitem>
          <para>AgingGorilla</para>
        </listitem>
        <listitem>
          <para>Bright</para>
        </listitem>
        <listitem>
          <para>Metabox</para>
        </listitem>
      </itemizedlist>
      <note>
        <para>Metabox does not work well with inverse controls options such
as HighContrastInverse. Use Atlanta with inverse controls options.</para>
      </note>
      <para><indexterm><primary>themes</primary><secondary>window frame options</secondary><tertiary>changing</tertiary></indexterm>To change the window
frame theme option, run the following command: </para>
      <screen><userinput>gconftool-2 \
--type string \
--set /apps/metacity/general/theme <replaceable>옵션-이름</replaceable></userinput></screen>
      <para>For example, to use Atlanta, run the following command:</para>
      <screen><userinput>gconftool-2 \
--type string \
--set /apps/metacity/general/theme Atlanta</userinput></screen>
      <para>Alternatively, users can use the <application>Theme</application> preference
tool to select the appropriate option.</para>
      <tip>
        <para>You can use the <application>Metacity Theme Viewer</application>
to measure the performance of a window frame option, and to preview the option.
To start <application>Metacity Theme Viewer</application>, use the following
command:</para>
        <screen><userinput>metacity-theme-viewer <replaceable>옵션-이름</replaceable></userinput></screen>
        <para>For example, to measure the performance of Atlanta and preview Atlanta,
run the following command: </para>
        <screen><userinput>metacity-theme-viewer Atlanta</userinput></screen>
      </tip>
    </sect2>
    <sect2 id="performance-2">
      <title>To Reduce CPU Usage by Turning Off Display of Icons in Menus</title>
      <indexterm>
        <primary>icons, in menus</primary>
        <see>menu icons</see>
      </indexterm>
      <indexterm>
        <primary>menu icons</primary>
        <secondary>and CPU usage</secondary>
      </indexterm>
      <indexterm>
        <primary>menu icons</primary>
        <secondary>turning off</secondary>
      </indexterm>
      <para>Some items in menus display an icon beside the
item. To turn off this feature, run the following command: </para>
      <screen><userinput>gconftool-2 \
--type bool \
--set /desktop/gnome/interface/menus_have_icons false</userinput></screen>
      <para>Alternatively, users can use the <application>Menus &amp; Toolbars</application>
preference tool to deselect the <guilabel>Show icons in menus</guilabel> option.</para>
    </sect2>
    <sect2 id="performance-6">
      <title>To Reduce CPU Usage by Turning Off the Splash Screen</title>
      <indexterm>
        <primary>스플래시 이미지</primary>
        <secondary>and CPU usage</secondary>
      </indexterm>
      <para>By default, when users log in to the desktop environment,
a splash screen is displayed. Icons are displayed on the splash screen while
the user logs in. You can turn off the splash screen to reduce CPU usage during
login. </para>
      <para><indexterm><primary>splash screen</primary><secondary>turning off</secondary></indexterm>To turn off the splash screen, run the following command:</para>
      <screen><userinput>gconftool-2 \
--type bool \
--set /apps/gnome-session/options/show_splash_screen false</userinput></screen>
      <para>Alternatively, users can use the <application>Sessions</application>
preference tool to deselect the <guilabel>Show splash screen on login</guilabel>
option.</para>
    </sect2>
    <sect2 id="performance-4">
      <title>To Reduce CPU Usage by Turning Off Panel Animation</title>
      <indexterm>
        <primary>패널</primary>
        <secondary>animation, turning off</secondary>
      </indexterm>
      <para>When users show or hide panels, the panels can show or hide
in an animated style. To turn off panel animation, run the following command: </para>
      <screen><userinput>gconftool-2 \
--type bool \
--set /apps/panel/global/enable_animations false</userinput></screen>
      <para>Alternatively, users can use the <application>Panel</application> preference
tool to deselect the <guilabel>Drawer and panel animation</guilabel> option.</para>
    </sect2>
    <sect2 id="performance-7">
      <title>Improving File Manager Performance</title>
      <indexterm>
        <primary>Nautilus</primary>
        <see>file manager</see>
      </indexterm>
      <para>The <application>Nautilus</application> file manager includes some features
that you can modify to improve performance.</para>
      <sect3 id="performance-9">
        <title>To Modify Performance Preferences</title>
        <indexterm>
          <primary>file manager</primary>
          <secondary>modifying performance
preferences</secondary>
        </indexterm>
        <para>The file manager includes performance-related
preferences. Each performance preference can take one of three values. The
values are described in the following table:</para>
        <informaltable frame="topbot">
          <tgroup cols="2" colsep="0" rowsep="0">
            <colspec colwidth="34.46*"/>
            <colspec colwidth="65.54*"/>
            <thead>
              <row rowsep="1">
                <entry>
                  <para>Value</para>
                </entry>
                <entry>
                  <para>설명</para>
                </entry>
              </row>
            </thead>
            <tbody>
              <row>
                <entry valign="top">
                  <para>
                    <literal>always</literal>
                  </para>
                </entry>
                <entry valign="top">
                  <para>Performs the action for both local files, and files on
other file systems.</para>
                </entry>
              </row>
              <row>
                <entry valign="top">
                  <para>
                    <literal>local_only</literal>
                  </para>
                </entry>
                <entry valign="top">
                  <para>Performs the action for local files only. When you
set a performance preference to <literal>local_only</literal>, the CPU usage
is reduced.</para>
                </entry>
              </row>
              <row>
                <entry valign="top">
                  <para>
                    <literal>never</literal>
                  </para>
                </entry>
                <entry valign="top">
                  <para>Never performs the action. When you set a performance preference
to never, the CPU usage and the network traffic are reduced.</para>
                </entry>
              </row>
            </tbody>
          </tgroup>
        </informaltable>
        <para>The following table describes the performance preferences for the file
manager. For the fastest performance, set the value of the preferences to <literal>never</literal>.</para>
        <informaltable frame="topbot">
          <tgroup cols="2" colsep="0" rowsep="0">
            <colspec colwidth="43.34*"/>
            <colspec colwidth="56.66*"/>
            <thead>
              <row rowsep="1">
                <entry>
                  <para>Preference</para>
                </entry>
                <entry>
                  <para>설명</para>
                </entry>
              </row>
            </thead>
            <tbody>
              <row>
                <entry valign="top">
                  <para>
                    <literal>show_icon_text</literal>
                  </para>
                </entry>
                <entry valign="top">
                  <para>Specifies when to preview the content of text files
in the icon that represents the file. To never preview the content of text
files, run the following command: </para>
                  <screen><userinput>gconftool-2 \
--type string \
--set /apps/nautilus/preferences/show_icon_text never</userinput></screen>
                  <para>Alternatively, users can perform
the following steps:</para>
                  <orderedlist>
                    <listitem>
                      <para>Choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Preferences</guimenuitem></menuchoice> from a file manager window, then choose <guilabel>Preview</guilabel>.</para>
                    </listitem>
                    <listitem>
                      <para>Select an option for the <guilabel>Show text in icons</guilabel>
preference.</para>
                    </listitem>
                  </orderedlist>
                </entry>
              </row>
              <row>
                <entry valign="top">
                  <para>
                    <literal>show_directory_item_counts</literal>
                  </para>
                </entry>
                <entry valign="top">
                  <para>Specifies when to show the number of items in folders.
To never show the number of items in folders, run the following command:</para>
                  <screen><userinput>gconftool-2 \
--type string \
--set /apps/nautilus/preferences/show_directory_item_counts never</userinput></screen>
                  <para>Alternatively, users can perform the following steps:</para>
                  <orderedlist>
                    <listitem>
                      <para>Choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Preferences</guimenuitem></menuchoice> from a file manager window, then choose <guilabel>Preview</guilabel>.</para>
                    </listitem>
                    <listitem>
                      <para>Select an option for the <guilabel>Count number of items</guilabel>
preference.</para>
                    </listitem>
                  </orderedlist>
                </entry>
              </row>
              <row>
                <entry valign="top">
                  <para>
                    <literal>show_image_thumbnails</literal>
                  </para>
                </entry>
                <entry valign="top">
                  <para>Specifies when to show thumbnails of image files.
To never show thumbnails, run the following command:</para>
                  <screen><userinput>gconftool-2 \
--type string \
--set /apps/nautilus/preferences/show_image_thumbnails never</userinput></screen>
                  <para>Alternatively, users can perform the following steps:</para>
                  <orderedlist>
                    <listitem>
                      <para>Choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Preferences</guimenuitem></menuchoice> from a file manager window, then choose <guilabel>Preview</guilabel>.</para>
                    </listitem>
                    <listitem>
                      <para>Select an option for the <guilabel>Show thumbnails</guilabel>
preference.</para>
                    </listitem>
                  </orderedlist>
                </entry>
              </row>
              <row>
                <entry valign="top">
                  <para>
                    <literal>preview_sound</literal>
                  </para>
                </entry>
                <entry valign="top">
                  <para>Specifies when to preview the content of sound files.
To never preview the content of sound files, run the following command:</para>
                  <screen><userinput>gconftool-2 \
--type string \
--set /apps/nautilus/preferences/preview_sound never</userinput></screen>
                  <para>Alternatively, users can perform the following
steps:</para>
                  <orderedlist>
                    <listitem>
                      <para>Choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Preferences</guimenuitem></menuchoice> from a file manager window, then choose <guilabel>Preview</guilabel>.</para>
                    </listitem>
                    <listitem>
                      <para>Select an option for the <guilabel>Preview sound files</guilabel>
preference.</para>
                    </listitem>
                  </orderedlist>
                </entry>
              </row>
            </tbody>
          </tgroup>
        </informaltable>
      </sect3>
      <sect3 id="performance-10">
        <title>To Turn Off the Side Pane, Toolbar, and Location Bar</title>
        <indexterm>
          <primary>file manager</primary>
          <secondary>side pane, turning off</secondary>
        </indexterm>
        <para>The file manager includes preferences that enable
you to turn off the side pane and the toolbar. To improve file manager performance,
turn off the side pane and the toolbar.</para>
        <para>To turn off the side pane, run the following command: </para>
        <screen><userinput>gconftool-2 \
--type bool \
--set /apps/nautilus/preferences/start_with_sidebar false</userinput></screen>
        <para><indexterm><primary>file manager</primary><secondary>toolbar, turning
off</secondary></indexterm>To turn off the toolbar, run the following command: </para>
        <screen><userinput>gconftool-2 \
--type bool \
--set /apps/nautilus/preferences/start_with_toolbar false</userinput></screen>
        <para>You can also turn off the location bar. Users can use the <keycombo><keycap>Ctrl</keycap><keycap>L</keycap></keycombo> keyboard shortcut to display a location bar
when required.  </para>
        <para><indexterm><primary>file manager</primary><secondary>location bar, turning
off</secondary></indexterm>To turn off the location bar, run the following
command:</para>
        <screen><userinput>gconftool-2 \
--type bool \
--set /apps/nautilus/preferences/start_with_location_bar false</userinput></screen>
      </sect3>
      <sect3 id="performance-11">
        <title>To Turn Off the Desktop</title>
        <indexterm>
          <primary>file manager</primary>
          <secondary>desktop, turning off</secondary>
        </indexterm>
        <indexterm>
          <primary>desktop</primary>
          <secondary>turning
off</secondary>
        </indexterm>
        <para>The file manager contains a preference that
enables users to use <application>Nautilus</application> to manage the desktop.
You can disable the desktop to improve performance. However, if you disable
the desktop, you cannot do the following:</para>
        <itemizedlist>
          <listitem>
            <para>Use the <guimenu>Desktop</guimenu> menu.</para>
          </listitem>
          <listitem>
            <para>Use the file manager to change the pattern or color of the
desktop background. </para>
          </listitem>
          <listitem>
            <para>Use the desktop objects, such as <guilabel>Trash</guilabel>.
The desktop objects are not displayed on the desktop. </para>
          </listitem>
        </itemizedlist>
        <para>To disable the desktop, run the following command: </para>
        <screen><userinput>gconftool-2 \
--type bool \
--set /apps/nautilus/preferences/show_desktop false</userinput></screen>
      </sect3>
    </sect2>
  </sect1>
  <sect1 id="performance-12">
    <title>Reducing X Window System Network Traffic</title>
    <indexterm>
      <primary>reducing</primary>
      <secondary>X Window System network traffic</secondary>
    </indexterm>
    <indexterm>
      <primary>X Window System network traffic,
reducing</primary>
    </indexterm>
    <indexterm>
      <primary>network traffic, reducing</primary>
    </indexterm>
    <para>This section describes preferences that you can
set to reduce X Window System network traffic on the GNOME Desktop. </para>
    <sect2 id="performance-14">
      <title>To Use Theme Options Which Create Less Network Traffic</title>
      <indexterm>
        <primary>테마</primary>
        <secondary>창 가장자리 옵션</secondary>
        <tertiary>and network traffic</tertiary>
      </indexterm>
      <indexterm>
        <primary>테마</primary>
        <secondary>and network traffic</secondary>
      </indexterm>
      <para>Remote
display protocols do not transfer every pixel in a block of pixels if all
pixels in the block are the same color.</para>
      <para>To reduce X Window System network traffic, use a window frame theme
option that uses solid colors. That is, use one of the following window frame
options:</para>
      <itemizedlist>
        <listitem>
          <para>Atlanta</para>
        </listitem>
        <listitem>
          <para>Esco</para>
        </listitem>
      </itemizedlist>
      <para>For information on how to change theme options, see <xref linkend="performance-3"/>.</para>
    </sect2>
    <sect2 id="performance-15">
      <title>To Reduce Network Traffic by Turning Off Display of Icons in Menus</title>
      <indexterm>
        <primary>menu icons</primary>
        <secondary>and network traffic</secondary>
      </indexterm>
      <para>Some items in menus display an icon beside the item. If
the icon is located on another file system, this feature can increase X Window
System network traffic. This feature can also increase X Window System network
traffic if the panels are displayed on a remote host. </para>
      <para>For information on how to turn off this feature, see <xref linkend="performance-2"/>.</para>
    </sect2>
  </sect1>
  <sect1 id="performance-17">
    <title>Reducing Color Usage and Improving Display Quality</title>
    <indexterm>
      <primary>reducing</primary>
      <secondary>color usage</secondary>
    </indexterm>
    <indexterm>
      <primary>color usage</primary>
      <secondary>reducing</secondary>
    </indexterm>
    <indexterm>
      <primary>display quality, improving</primary>
    </indexterm>
    <para>Many modern computer systems support 24-bit color, that is, 16,777,216 colors.
However, many users still use systems that support 8-bit color, that is, 256
colors. </para>
    <para>The GNOME Desktop uses the <firstterm>websafe color palette</firstterm>.
This palette is a general-purpose palette of 216 colors, which is designed
to optimize the use of color on systems that support 8-bit color. However,
some visual components of the GNOME Desktop are designed for systems that
support 24-bit color.</para>
    <para>The following display problems might occur on systems that support 8-bit
color:</para>
    <itemizedlist>
      <listitem>
        <para>Windows, icons, and background images might appear grainy.
 Many themes, background images, and icons use colors that are not in the
websafe color palette. The colors that are not in the palette are replaced
with the nearest equivalent or a dithered approximation. This use of replacement
colors causes the grainy appearance.</para>
      </listitem>
      <listitem>
        <para>Applications that do not use the websafe color palette have
less colors available. Color errors might occur. Some colors might not appear
in the user interface of the application. Some applications might crash if
the application cannot allocate colors.</para>
      </listitem>
      <listitem>
        <para>Color flashing might occur when users switch between applications
that use the websafe color palette, and applications that do not use this
palette. The applications that do not use the websafe color palette might
use a custom colormap. When the custom colormap is used, other visual components
might lose colors, then become unviewable.</para>
      </listitem>
    </itemizedlist>
    <para>The following sections describe how to optimize the appearance of the
GNOME Desktop for systems that support 8-bit color. </para>
    <sect2 id="performance-20">
      <title>To Use Theme Options That Use the Websafe Color Palette</title>
      <indexterm>
        <primary>테마</primary>
        <secondary>창 가장자리 옵션</secondary>
        <tertiary>and color usage</tertiary>
      </indexterm>
      <indexterm>
        <primary>테마</primary>
        <secondary>and color usage</secondary>
      </indexterm>
      <para>Some window
frame theme options use colors that are in the websafe color palette. Bright
and Esco use colors from the websafe color palette. Bright and Esco do not
have the grainy appearance of other window frame options on 8-bit color displays.
Use Bright or Esco for the best color display on 8-bit visual modes. </para>
      <para>For information on how to change theme options, see <xref linkend="performance-3"/>.</para>
    </sect2>
    <sect2 id="performance-21">
      <title>To Reduce Color Usage by Turning Off Display of Icons in Menus</title>
      <indexterm>
        <primary>menu icons</primary>
        <secondary>and color usage</secondary>
      </indexterm>
      <para>Some items in menus display an icon beside the item. If
the icon contains colors that are not in the websafe color palette, this feature
can increase the number of colors used.</para>
      <para>For information on how to turn off this feature, see <xref linkend="performance-2"/>.</para>
    </sect2>
    <sect2 id="performance-18">
      <title>To Reduce Color Usage by Turning Off the Splash Screen</title>
      <indexterm>
        <primary>스플래시 이미지</primary>
        <secondary>and color usage</secondary>
      </indexterm>
      <para>You can turn off the splash screen to make more colors available
for the GNOME Desktop and for applications.</para>
      <para>For information on how to turn off the splash screen, see <xref linkend="performance-6"/>.</para>
    </sect2>
    <sect2 id="performance-19">
      <title>To Reduce Color Usage by Using a Solid Color for the Background</title>
      <indexterm>
        <primary>배경, 바탕 화면</primary>
        <secondary>using solid color</secondary>
      </indexterm>
      <para>Use a solid color for the desktop background. Use of a solid
color reduces the number of colors used by the GNOME Desktop. </para>
      <para>To set a solid color for the background, run the following commands: </para>
      <screen><userinput>gconftool-2 \
--type string \
--set /desktop/gnome/background/picture_options none</userinput></screen>
      <screen><userinput>gconftool-2 \
--type string \
--set /desktop/gnome/background/color_shading_type solid</userinput></screen>
      <screen><userinput>gconftool-2 \
--type string \
--set /desktop/gnome/background/primary_color #<replaceable>hexadecimal-color</replaceable></userinput></screen>
      <para>Alternatively, users can use the <application>Background</application>
preference tool to choose a solid color for the background.</para>
    </sect2>
  </sect1>
</chapter>

<chapter id="lockdown-0">
  <title>Disabling GNOME Desktop Features</title>
  <highlights>
    <para>This chapter describes how to disable particular features
of the GNOME Desktop.</para>
  </highlights>
  <sect1 id="lockdown-1">
    <title>Introduction to Disabling GNOME Desktop Features</title>
    <indexterm>
      <primary>disabling features</primary>
      <secondary>개요</secondary>
    </indexterm>
    <indexterm>
      <primary>lockdown</primary>
      <see>disabling features</see>
    </indexterm>
    <para>The GNOME Desktop includes features that you can use
to restrict access to certain functions in the GNOME Desktop. The disable
features are useful in various situations where you want to restrict the actions
that users can perform on a computer. For example, you might want to prevent
command line operations on a computer that is for public use at a trade show.
The disable features are also known as <emphasis>lockdown</emphasis> features.</para>
    <para>You set <application>GConf</application> keys to disable features. For
information about how to set <application>GConf</application> keys, see <xref linkend="gconf-0"/>. You can also use the <application>Configuration Editor</application> application to set <application>GConf</application> keys in
a user configuration source. For more information about the <application>Configuration Editor</application> application, see the <citetitle>GConf Editor
Manual</citetitle>.</para>
  </sect1>
  <sect1 id="lockdown-manual">
    <title>Locking Down Setting Manually</title>
    <sect2 id="lockdown-2">
      <title>To Disable Lock Screen and Log Out</title>
      <indexterm>
        <primary>disabling features</primary>
        <secondary>lock screen</secondary>
      </indexterm>
      <indexterm>
        <primary>disabling features</primary>
        <secondary>log
  out</secondary>
      </indexterm>
      <para>To disable the lock screen and log out functions, set the <literal>/apps/panel/global/disable_lock_screen</literal> key and the <literal>/apps/panel/global/disable_log_out</literal> key to <literal>true</literal>.</para>
      <para>When you disable
  the lock screen and log out functions, the following items are removed from
  the panels:</para>
      <itemizedlist>
        <listitem>
          <para><guimenuitem>Lock Screen</guimenuitem> and <guimenuitem>Log
  Out <replaceable>user</replaceable></guimenuitem> menu items from the <guimenu>Main Menu</guimenu>.</para>
        </listitem>
        <listitem>
          <para><guimenuitem>Lock</guimenuitem> and <guimenuitem>Log Out</guimenuitem>
  menu items from the <menuchoice><guimenu>Add to Panel</guimenu><guimenuitem>Actions</guimenuitem></menuchoice> menu. To open this menu, right-click on
  a vacant space on a panel, then choose <menuchoice><guimenu>Add to Panel</guimenu><guimenuitem>Actions</guimenuitem></menuchoice>.</para>
        </listitem>
        <listitem>
          <para><guimenuitem>Lock Screen</guimenuitem> and <guimenuitem>Log
  Out <replaceable>user</replaceable></guimenuitem> menu items from the <guimenu>Actions</guimenu> menu in the <application>Menu Bar</application> applet.</para>
        </listitem>
      </itemizedlist>
      <para>Also, any <guibutton>Lock Screen</guibutton> buttons and <guibutton>Log Out</guibutton> buttons on panels are disabled.</para>
    </sect2>
    <sect2 id="lockdown-12">
      <title>To Disable Command Line Operations</title>
      <indexterm>
        <primary>disabling features</primary>
        <secondary>command line</secondary>
      </indexterm>
      <para>To disable operations from a command line, set the <literal>/desktop/gnome/lockdown/disable_command_line</literal> key to <literal>true</literal>.</para>
      <para>When you disable command line operations, the following
  changes occur in the user interface:</para>
      <itemizedlist>
        <listitem>
          <para>The <guimenuitem>Run Application</guimenuitem> menu item is
  removed from the following menus:</para>
          <itemizedlist>
            <listitem>
              <para>
                <guimenu>Main Menu</guimenu>
              </para>
            </listitem>
            <listitem>
              <para><guimenu>Actions</guimenu> submenu in the <guimenu>Add to
  Panel</guimenu> menu</para>
            </listitem>
            <listitem>
              <para><guimenu>Actions</guimenu> menu in the <application>Menu Bar</application> applet</para>
            </listitem>
          </itemizedlist>
        </listitem>
        <listitem>
          <para>Any <guibutton>Run</guibutton> buttons on panels are disabled.</para>
        </listitem>
      </itemizedlist>
      <para>To disable command line operations, you must also remove menu items
  that start terminal applications. For example, you might want to remove menu
  items that contain the following commands from the menus:</para>
      <itemizedlist>
        <listitem>
          <para><application>GNOME Terminal</application> command, that is <command>/usr/bin/gnome-terminal</command></para>
        </listitem>
        <listitem>
          <para>
            <command>/usr/bin/xterm</command>
          </para>
        </listitem>
        <listitem>
          <para>
            <command>/usr/bin/setterm</command>
          </para>
        </listitem>
      </itemizedlist>
      <para>The items are removed from the following menus:</para>
      <itemizedlist>
        <listitem>
          <para>
            <guimenu>Main Menu</guimenu>
          </para>
        </listitem>
        <listitem>
          <para>
            <menuchoice>
              <guimenu>Add to Panel</guimenu>
              <guimenuitem>Launcher from menu</guimenuitem>
            </menuchoice>
          </para>
        </listitem>
      </itemizedlist>
      <para>To disable command line operations, you must also disable the <application>Command Line</application> applet. To disable the <application>Command Line</application> applet, add the applet to the <literal>/apps/panel/global/disabled_applets</literal> key. When you disable the <application>Command Line</application>
  applet, the <application>Command Line</application> applet is removed from
  the <guimenu>Main Menu</guimenu> and the <menuchoice><guimenu>Add to Panel</guimenu><guimenuitem>Utility</guimenuitem></menuchoice> menu. </para>
    </sect2>
    <sect2 id="lockdown-11">
      <title>To Disable Panel Configuration</title>
      <indexterm>
        <primary>disabling features</primary>
        <secondary>panel configuration</secondary>
      </indexterm>
      <para>To disable panel configuration, set the <literal>/apps/panel/global/locked_down</literal> key to <literal>true</literal>.</para>
      <para>When you disable
  panel configuration, the following changes occur in the user interface:</para>
      <itemizedlist>
        <listitem>
          <para>The following items are removed from the panel popup menu,
  and from the drawer popup menu:</para>
          <itemizedlist>
            <listitem>
              <para>
                <guimenuitem>Add to Panel</guimenuitem>
              </para>
            </listitem>
            <listitem>
              <para>
                <guimenuitem>Delete This Panel</guimenuitem>
              </para>
            </listitem>
            <listitem>
              <para>
                <guimenuitem>Properties</guimenuitem>
              </para>
            </listitem>
            <listitem>
              <para>
                <guimenuitem>New Panel</guimenuitem>
              </para>
            </listitem>
          </itemizedlist>
        </listitem>
        <listitem>
          <para>The launcher popup menu is disabled.</para>
        </listitem>
        <listitem>
          <para>The following items are removed from the applet popup menu:</para>
          <itemizedlist>
            <listitem>
              <para>
                <guimenuitem>Remove From Panel</guimenuitem>
              </para>
            </listitem>
            <listitem>
              <para>
                <guimenuitem>Lock</guimenuitem>
              </para>
            </listitem>
            <listitem>
              <para>
                <guimenuitem>Move</guimenuitem>
              </para>
            </listitem>
          </itemizedlist>
        </listitem>
        <listitem>
          <para>The <guimenu>Main Menu</guimenu> popup menu is disabled. </para>
        </listitem>
        <listitem>
          <para>The launcher drag feature is disabled, so that users cannot
  drag launchers to, or from, panels.</para>
        </listitem>
        <listitem>
          <para>The panel drag feature is disabled, so that users cannot drag
  panels to new locations.</para>
        </listitem>
      </itemizedlist>
    </sect2>
  </sect1>
  <sect1 id="lockdown">
    <title>Lockdown Editor</title>
  
    <para>As of GNOME 2.14, a graphical lockdown editor called
    <application>Pessulus</application> has been included to ease the task of
    disabling desktop settings.</para>
  
    <sect2 id="lockdown-start">
      <title>Getting Started</title>
  
      <para>To run the lockdown editor:</para>
  
      <itemizedlist>
        <listitem>
          <para>Click the <menuchoice>
              <guimenu>Desktop</guimenu>
  
              <guisubmenu>Administration</guisubmenu>
  
              <guimenuitem>Lockdown Editor</guimenuitem>
            </menuchoice></para>
        </listitem>
  
        <listitem>
          <para>Run the <command>pessulus</command> command in a terminal
          window.</para>
        </listitem>
      </itemizedlist>
  
      <para>You will see a window with several different tabs. Each of the tabs
      represents a different category of desktop settings that can be disabled.
      In the next section, we will discuss each category and provide a brief
      description for each setting that can be disabled.</para>
    </sect2>
  
    <sect2 id="lockdown-disabling">
      <title>Disabling Features</title>
  
      <para>To disable a setting, make sure the checkbox next to the setting's
      description is checked. Most settings will take effect immediately,
      however some settings will require that the application be restarted in
      order to take effect.</para>
  
      <para>When <application>pessulus</application> starts, it will try to get
      a connection to the GConf mandatory configuration source. This address for
      this configuration source is
      <literal>xml:merged:<replaceable>$prefix</replaceable>/etc/gconf/gconf.xml.mandatory</literal>.
      If the user that is running <application>pessulus</application> has access
      to this configuration source, then a lock icon will be displayed next to
      the checkbox for each setting. Clicking the lock will toggle whether or
      not the setting is mandatory. If the setting is mandatory, then regular
      users will not be able to change or override the setting. If the user
      running pessulus does not have access to the mandatory configuration
      source, then the lock icon will not appear. In this case, all disabled
      settings will simply be stored in the user's default configuration source
      and can be modified later using other tools such as
      <application>gconf-editor</application> or
      <application>gconftool-2</application>. For more information on GConf and
      mandatory configuration sources, see <xref linkend="gconf-26"/>.</para>
  
      <para>The following subsections will give a brief description of the
      settings that can be disabled for each category.</para>
  
      <note>
        <para>Depending on the applications you have installed, you may see
        fewer categories than those described in this section.</para>
      </note>
  
      <sect3 id="lockdown-disabling-general">
        <title>General</title>
  
        <variablelist>
          <varlistentry>
            <term>Disable command line</term>
  
            <listitem>
              <para>Prevent the user from accessing the terminal or specifying a
              command line to be executed. For example, this would disable
              access to the panel's "Run Application" dialog.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable printing</term>
  
            <listitem>
              <para>Prevent the user from printing. For example, this would
              disable access to all applications' "Print" dialogs.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable print setup</term>
  
            <listitem>
              <para>Prevent the user from modifying print settings. For example,
              this would disable access to all applications' "Print Setup"
              dialogs.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable save to disk</term>
  
            <listitem>
              <para> Prevent the user from saving files to disk. For example,
              this would disable access to all applications' "Save as"
              dialogs.</para>
            </listitem>
          </varlistentry>
        </variablelist>
      </sect3>
  
      <sect3 id="lockdown-disabling-panel">
        <title>Panel</title>
  
        <variablelist>
          <varlistentry>
            <term>Lock down the panels</term>
  
            <listitem>
              <para>If true, the panel will not allow any changes to the
              configuration of the panel. Individual applets may need to be
              locked down separately however. The panel must be restarted for
              this to take effect.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable force quit</term>
  
            <listitem>
              <para>If true, the panel will not allow a user to force an
              application to quit by removing access to the force quit
              button.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable lock screen</term>
  
            <listitem>
              <para>If true, the panel will not allow a user to lock their
              screen, by removing access to the lock screen menu entries.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable log out</term>
  
            <listitem>
              <para>If true, the panel will not allow a user to log out, by
              removing access to the log out menu entries.</para>
            </listitem>
          </varlistentry>
        </variablelist>
      </sect3>
  
      <sect3 id="lockdown-disabling-browser">
        <title>Epiphany Web Browser</title>
  
        <variablelist>
          <varlistentry>
            <term>Disable quit</term>
  
            <listitem>
              <para>User is not allowed to close Epiphany.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable arbitrary URL</term>
  
            <listitem>
              <para>Disable the user's ability to type in a URL to
              Epiphany.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable bookmark editing</term>
  
            <listitem>
              <para>Disable the user's ability to add or edit bookmarks.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable history</term>
  
            <listitem>
              <para>Disable all historical information by disabling back and
              forward navigation, not allowing the history dialog and hiding the
              most used bookmarks list.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable javascript chrome</term>
  
            <listitem>
              <para>Disable JavaScript's control over window chrome.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable toolbar editing</term>
  
            <listitem>
              <para>Disable the user's ability to edit toolbars.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Force fullscreen mode</term>
  
            <listitem>
              <para>Locks Epiphany in fullscreen mode.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Hide menubar</term>
  
            <listitem>
              <para>Hide the menubar by default. The menubar can still be
              accessed using F10.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Disable unsafe protocols</term>
  
            <listitem>
              <para>Disables loading of content from unsafe protocols. Safe
              protocols are http and https.</para>
            </listitem>
          </varlistentry>
        </variablelist>
      </sect3>
  
      <sect3 id="lockdown-disabling-screensaver">
        <title>GNOME Screensaver</title>
  
        <variablelist>
          <varlistentry>
            <term>Lock on activation</term>
  
            <listitem>
              <para>Set this to TRUE to lock the screen when the screensaver
              goes active.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Allow logout</term>
  
            <listitem>
              <para>Set this to TRUE to offer an option in unlock dialog to
              logging out after a delay. The Delay is specified in the
              "logout_delay" key.</para>
            </listitem>
          </varlistentry>
  
          <varlistentry>
            <term>Allow user switching</term>
  
            <listitem>
              <para>Set this to TRUE to offer an option in the unlock dialog to
              switch to a different user account.</para>
            </listitem>
          </varlistentry>
        </variablelist>
      </sect3>
    </sect2>
  </sect1>
</chapter>

  
  <appendix id="appendixa-0">
    <title>Hidden Directories</title>
    <highlights>
      <para>This appendix describes the hidden directories that the
GNOME Desktop adds to the home directories of users. </para>
    </highlights>
    <indexterm>
      <primary>hidden directories</primary>
    </indexterm>
    <indexterm>
      <primary>.* directories</primary>
      <see>hidden directories</see>
    </indexterm>
    <para>A hidden
directory is a directory that has a name that begins with a period (.). <xref linkend="appendixa-TBL-2"/> describes the hidden directories that the GNOME
Desktop adds to the home directories of users. </para>
    <table frame="topbot" id="appendixa-TBL-2">
      <title>Hidden Directories in User Home Directories</title>
      <tgroup cols="2" colsep="0" rowsep="0">
        <colspec colname="colspec0" colwidth="33*"/>
        <colspec colname="colspec1" colwidth="67*"/>
        <thead>
          <row rowsep="1">
            <entry>
              <para>Directory</para>
            </entry>
            <entry>
              <para>설명</para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry valign="top">
              <para>
                <filename>.config</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>This is the default location for the environment variable <envar>XDG_CONFIG_HOME</envar>, 
if it is not set.  User defined menus can be created at <filename>menus/applications.menu</filename>.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.fonts</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains fonts specific to a particular user.  When a user installs a font by dragging it
to the <filename>fonts:///</filename> URI in nautilus, it is copied to this location.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.esd_auth</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains the authentication cookie for the GNOME
sound daemon. The GNOME sound daemon is the Enlightened Sound Daemon (ESD).</para>
<para><emphasis>NOTE: This is a file, not a directory.</emphasis></para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.gconf</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains the <application>GConf</application> configuration
source for the user. When the user sets a preference, the new preference information
is added to this location.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.gconfd</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains the following <application>GConf</application>
daemon details:</para>
              <itemizedlist>
                <listitem>
                  <para>Configuration information.</para>
                </listitem>
                <listitem>
                  <para>Lock information for objects that are referenced by an  <firstterm>Interoperable Object Reference (IOR)</firstterm>.</para>
                </listitem>
                <listitem>
                  <para>State information for objects that are referenced by an  IOR.</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.gnome</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains user-specific application data that is
not stored in the <application>GConf</application> repository. </para>
<para><emphasis>NOTE: this directory is deprecated and is only used by 
GNOME 1.x applications.</emphasis></para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.gnome2</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains user-specific application data that is
not stored in the <application>GConf</application> repository. For example,
this directory contains the following:</para>
              <itemizedlist>
                <listitem>
                  <para>Keyboard shortcut information.</para>
                </listitem>
                <listitem>
                  <para>Window location information.</para>
                </listitem>
                <listitem>
                  <para>Desktop entry files for panel launchers.</para>
                </listitem>
              </itemizedlist>
              <para>This directory may also contain sub-directories that store
application specific data.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.gnome2-private</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Ignore this directory. This directory has no function
at the time of publication of this guide.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.local/share</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>This is the default location for the environment variable <envar>XDG_DATA_HOME</envar>, 
if it is not set.  User defined desktop entries can be created in the subdirectory <filename>applications</filename>. 
User defined mime types can be created in <filename>mime/packages/Overrides.xml</filename>.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.metacity</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains session data for the <application>Metacity</application> window manager.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.nautilus</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains file manager data that is specific to the
user. For example, this directory can contain the following: </para>
              <itemizedlist>
                <listitem>
                  <para>Metadata for the directories with which the user works.</para>
                </listitem>
<!--Removed Nautilus themes.-->
                <listitem>
                  <para><application>Nautilus</application> emblems that the user
adds.</para>
                </listitem>
                <listitem>
                  <para><application>Nautilus</application> desktop images.</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.themes</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains controls theme options, window frame theme
options, and icons theme options that the user adds. The user can add themes
from the <application>Theme</application> preference tool.</para>
            </entry>
          </row>
          <row>
            <entry valign="top">
              <para>
                <filename>.thumbnails</filename>
              </para>
            </entry>
            <entry valign="top">
              <para>Contains image thumbnails for the user. The image
thumbnails are used in the file manager. The file manager contains a preference
that the user can select to stop generation of thumbnail images.</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </appendix>

  
  <appendix id="appendixb-0">
    <title>Security Note on Configuring SMB Printers</title>
    <highlights>
      <para>This appendix provides a security note related to the configuration
of printers on Windows network shares.</para>
    </highlights>
    <indexterm>
      <primary>Samba</primary>
      <see>SMB</see>
    </indexterm>
    <indexterm>
      <primary>Windows network shares</primary>
      <see>SMB</see>
    </indexterm>
    <indexterm>
      <primary>SMB</primary>
      <secondary>configuring printers</secondary>
    </indexterm>
    <para>Windows network shares are also referred to as Samba or <firstterm>SMB</firstterm>
shares. When you configure a printer on an SMB share, you must enter a username
and password for the print queue. </para>
    <para>The username and password for the print queue is stored as unencrypted
text in the file <filename>/etc/cups/printers.conf</filename>.
This file has read-only permissions for users with root privileges, so any
user with root privileges can read the username and password for the print
queue. </para>
    <para>To reduce the impact of possible security violations, ensure that the
username and password required to access the print queue is used only for
the print queue.  This ensures that any possible security violation is restricted
to unauthorized use of the print queue.</para>
  </appendix>

<glossary id="glossary-1">
  <title>Glossary</title>
  <!-- these anchors are to maintain backwards compatibility for 
       obsolete glossary entries -->

  <!-- file content sniffer -->
  <anchor id="glossary-23"/>
  <!-- MIME information file -->
  <anchor id="glossary-20"/>
  <!-- MIME keys file -->
  <anchor id="glossary-21"/>
  <!-- MIME type registry -->
  <anchor id="glossary-22"/>
  <!-- pattern mask -->
  <anchor id="glossary-25"/>
  <!-- vfolder -->
  <anchor id="glossary-9"/>
  <!-- vfolder information file -->
  <anchor id="glossary-10"/>

  <glossentry id="glossary-13">
    <glossterm><filename>.desktop</filename> file</glossterm>
    <glosssee otherterm="glossary-11"/>
  </glossentry>
  <glossentry id="glossary-14">
    <glossterm><filename>.directory</filename> file</glossterm>
    <glosssee otherterm="glossary-12"/>
  </glossentry>
  <glossentry id="glossary-32">
    <glossterm><filename>.omf</filename> file</glossterm>
    <glosssee otherterm="glossary-31"/>
  </glossentry>
  <glossentry id="glossary-18">
    <glossterm>application registry</glossterm>
    <glossdef>
      <para>The application registry is a collection of desktop entry
files which register applications. The location of the application registry
for the GNOME Desktop is <filename>$XDG_DATA_DIRS:$XDG_DATA_HOME/applications/</filename>.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-11">
    <glossterm>desktop entry file</glossterm>
    <glossdef>
      <para>A data file that provides information about an item in a menu.
The desktop entry file specifies the details for the item such as a name,
a command to run, an icon, and so on. Desktop entry files have a <filename>.desktop</filename> file extension.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-12">
    <glossterm>directory entry file</glossterm>
    <glossdef>
      <para>A data file that provides information about a menu. The directory
entry file specifies details such as a name for the menu, a tooltip for the
menu, and an icon to represent the menu. Directory entry files have a <filename>.directory</filename> file extension.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-5">
    <glossterm>GConf configuration source</glossterm>
    <glossdef>
      <para>A storage location in the <application>GConf</application>
repository. For example, <literal>xml:readonly:/etc/gconf/gconf.xml.defaults</literal>.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-2">
    <glossterm>GConf preference key</glossterm>
    <glossdef>
      <para>An element in the <application>GConf</application> repository
that corresponds to an application preference. For example, the <literal>/apps/gnome-session/options/show_splash_screen</literal> key corresponds to
the <guilabel>Show splash screen on login</guilabel> option in the <application>Sessions</application> preference tool.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-6">
    <glossterm>GConf path file</glossterm>
    <glossdef>
      <para>A file that lists the GConf configuration sources, and the
order in which to search the sources.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-3">
    <glossterm>GConf schema</glossterm>
    <glossdef>
      <para>A collective term for a schema key and a schema object.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-4">
    <glossterm>GConf schema definition file</glossterm>
    <glossdef>
      <para>A <application>GConf</application> schema definition file
lists the keys in a particular application, and defines the characteristics
of the keys. <application>GConf</application> schemas are generated from schema
definition files. Schema definition files have a <filename>.schemas</filename>
file extension.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-7">
    <glossterm>GConf schema key</glossterm>
    <glossdef>
      <para>A key that stores a schema object for a preference key. For
example, <literal>/schemas/desktop/gnome/interface/font_name</literal> is
a schema key for the <literal>/desktop/gnome/interface/font_name</literal>
preference key.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-8">
    <glossterm>GConf schema object</glossterm>
    <glossdef>
      <para>An element in a configuration source that contains information
about a preference key. The schema object contains information such as a default
value for the preference key, and documentation on the preference key. </para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-glob-pattern">
    <glossterm>glob pattern</glossterm>
    <glossdef>
      <para>A glob pattern is used to match a file name by using special
characters such as <literal>*</literal> and <literal>?</literal>.  The MIME
system uses glob patterns to assign MIME types based upon filenames and often,
file extensions.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-26">
    <glossterm>Interoperable Object Reference</glossterm>
    <glossdef>
      <para>An Interoperable Object Reference (IOR) is a string reference
to a  CORBA object. An IOR encodes a hostname and port to which messages can
be sent to control the object. The IOR also contains an object key to identify
the object.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-magic-rule">
    <glossterm>magic rule</glossterm>
    <glossdef>
      <para>A magic rule defines a file's MIME type by specifying 
text or binary data to search for at the beginning of the file.  Offsets to look for
this data are defined in a magic rule.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-menu-def">
    <glossterm>메뉴 정의 파일</glossterm>
    <glossdef>
      <para>Menu definition files define the hierarchy of menus that are used in the 
GNOME menu bar.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-27">
    <glossterm>MIME</glossterm>
    <glossdef>
      <para>Multipurpose Internet Mail Extension.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-mime-source-xml">
    <glossterm>MIME source XML file</glossterm>
    <glossdef>
      <para>A MIME source XML file defines how MIME types are resolved for different kinds
of files.  There are three ways in which this can be done: using file extensions (glob patterns),
using magic rules and using XML namespaces.  MIME source XML files are located
in the <filename>$XDG_DATA_DIRS:$XDG_DATA_HOME/mime/packages</filename> directory.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-16">
    <glossterm>MIME type</glossterm>
    <glossdef>
      <para>A MIME type identifies the format of a file. The MIME type
enables applications to read the file. For example, an email application can
use the <literal>image/png</literal> MIME type to detect that a Portable Networks
Graphic (PNG) file is attached to an email. </para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-mime-type-database">
    <glossterm>MIME type database</glossterm>
    <glossdef>
      <para>The MIME type database is a collection of files
which register MIME types for the desktop environment.  The location of
the MIME type database is the directory <filename>$XDG_DATA_DIRS:$XDG_DATA_HOME/mime</filename>.
</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-31">
    <glossterm>OMF file</glossterm>
    <glossdef>
      <para>Open Source Metadata Framework file. This is a file that is
associated with the XML file for a manual. The OMF file contains information
about the manual that is used by the Help browser. OMF files have a <filename>.omf</filename> file extension.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-33">
    <glossterm>PAM</glossterm>
    <glossdef>
      <para>Pluggable Authentication Modules.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-28">
    <glossterm>screensaver</glossterm>
    <glossdef>
      <para>A screensaver is an application that replaces the image on
a screen when the screen is not in use. The screensaver application for the
GNOME Desktop is <application>XScreenSaver</application>. </para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-29">
    <glossterm>screensaver display</glossterm>
    <glossdef>
      <para>A screensaver display is an application that displays images
on the screen of the user when the screen is not in use. </para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-34">
    <glossterm>UDP</glossterm>
    <glossdef>
      <para>User Datagram Protocol.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-15">
    <glossterm>Uniform Resource Identifier</glossterm>
    <glossdef>
      <para>A Uniform Resource Identifier (URI) is a string that identifies
a particular location in a file system or on the web. For example, the address
of a web page is a URI.</para>
    </glossdef>
  </glossentry>
  <glossentry id="glossary-24">
    <glossterm>websafe color palette</glossterm>
    <glossdef>
      <para>The websafe color palette is a general-purpose palette of
216 colors. The websafe color palette is designed to optimize the use of color
on systems that support 8-bit color. The websafe color palette is also called
the <emphasis>Netscape color palette</emphasis> and the <emphasis>Netscape
color cube</emphasis>.</para>
    </glossdef>
  </glossentry>
</glossary>


<!-- If generating PDFs and if you want an index, then uncomment <index/> -->
<!-- <index/> -->

</book>
