[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21. Installing an Info File

Info 파일은 보통 `info' 디렉토리에 저장된ㄷ. Info 파일은 독립된 Info 파일이나, Emacs 내에 있는 Info 리더를 써서 읽을 수 있다. (See info: (info)Top, for an introduction to Info.)

Info 가 동작하도록 하려면, `info' 디레고ㅌ리는 전체 Info 시스템의 맨 위 단계로 동작하는 파일이 있어야 한다. 전통적인 이유로, 이 파일은 `dir'라고 불리운다. (이 디렉토리의 위치는 Emacs에서 C-h i를 눌러서 Info로 들어간 다음에 C-x C-f를 타이프하면 `info' 디렉토리의 경로 이름(pathname)을 볼 수 있다.)

`dir' 파일 역시 Info 파일이다. 이 파일은 그 시스템의 모든 Info 파일에 대한 맨 위 단계의 메뉴를 가지고 있다. 그 메뉴는 다음과 같다:

 
* Menu:

* Info:    (info).     Documentation browsing system.
* Emacs:   (emacs).    The extensible, self-documenting
                       text editor.
* Texinfo: (texinfo).  With one source file, make
                       either a printed manual using
                       TeX or an Info file.
…

이 메뉴의 각 항목은 괄호 속에 그 파일이름이 있는 Info 파일의 `Top' 노드를 가리킨다. (메뉴 항목은 `Top' 노드라고 지정할 필요가 없다. 왜냐하면 Info에서 노드 이름을 말하지 않으면 자동으로 `Top' 노드로 가기 때문이다. See section Nodes in Other Info Files.)

즉, `Info' 하옥은 `info' 파일의 `Top' 노드를 가리키고, `Emacs' 항목은 `emacs' 파일의 `Top' 노드를 가리킨다.

각 Info 파일에서, `Up' 포인터와 `Top' 노드는 dir 파일을 거꾸로 가리키고 잇다. 예를 들어, Emacs 매뉴얼의 `Top' 노드는 Info에서 다음과 같이 보인다:

 
File: emacs  Node: Top, Up: (DIR), Next: Distrib

(이 경우에, `dir' 파일은 대문자로 쓰여 있다--이것은 대문자로 쓰이나 소문자로 쓰이나 상관없다. Info는 쓰여진 파일을 찾지 못하면 파일 이름을 자동으로 소문자로 바꾸는 기능이 있다.)


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21.1 Listing a New Info File

새로운 Info 파일을 시스템에 추가하려면, `info' 디렉토리에 있는 `dir' 파일에 메뉴 항목을 하나 추가해야 한다. 예를 들어, GDB 문서를 추가하려면, 다음과 같은 항목을 쓸 것이다:

 
* GDB: (gdb).           The source-level C debugger.

이 메뉴 항목의 첫번째 부분은 메뉴 항목의 이르이고, 그 다음에 콜론(colon)이 온다. 두번째 부분은 Info 파일의 이름으로, 괄호 안에 있고 마침표으로 끝난다. 세번째 부분은 설명이다.

Info 파일의 이름은 대부분 `.info' 확장자가 있다. 즉, GDB의 Info 파일은 `gdb' 혹은 `gdb.info'가 될 수도 있다. Info 리더(reader) 프로그램은 자동으로 `.info'가 있는 이름과 없는 이름의 두가지 이름을 시도한다; 혼란을 피하기 위해, `.info'를 직접 메뉴 항목에 넣지 않는 것이 더 좋다. 예를 들어, GDB 메뉴 항목은 파일 이름으로 `gdb.info'가 아닌 그냥 `gdb'를 사용해야 한다.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21.2 Info Files in Other Directories

Info 파일이 `info' 디렉토리에 없으면, 이 위치를 지정하는 방법이 세가지 있다;

예를 들어, `/home/bob/manuals' 디렉토리에 있는 테스트 파일을 접근하려면, `dir' 파일의 메뉴에 다음과 같은 항목을 추가한다:

 
* Test: (/home/bob/manuals/info-test).  Bob's own test file.

이 경우에 메뉴 항목의 두번째 부분으로 `info-test' 파일의 절대 파일이름(absolute file name)을 써야 한다.

이 대신에, 다음을 `.emacs' 파일에 쓸 수 있다:

 
(setq Info-directory-list
      '("/home/bob/manuals"
        "/usr/local/info"))

이렇게 하면, Emacs가 `/home/bob/manuals' 디렉토리의 `dir' 파일과 `/usr/local/info' 디렉토리의 `dir' 파일을 합친다. Info는 `/home/bob/manuals/info-test' 파일을 `/home/bob/manuals/dir' 파일 내의 메뉴 항목을 통해서 열거할 것이다.

마지막 방법으로, INFOPATH 환경 변수를 `.cshrc'`.profile' 파일에서 지정해서 Info가 어디를 찾을지 알려준다. sh이나 bash같은 Bourne 셸 호환을 셸 명령어 해석기(shell command interpreter)로 쓴다면, INFOPATH 호나경 변술ㅡㄹ `.profile' 초기화 파일에서 지정한다; 하지만, cshtcsh을 쓴다면, `.cshrc' 초기화 파일에서 변수를 지정해야 한다. 이 두가지 타입의 셸은 다른 문법을 쓴다.

`.'는 현대 디렉토리를 뜻한다. Emacs는 Emacs 자신의 Info-directory-list 변수를 초기화할 때 INFOPATH 환경변수를 사용한다.

하지만, INFOPATH를 사용할 때, 마지막 문자가 콜론(colon)이면, 이 콜론(colon)은 기본 (컴파일되어 있는) 경로(path)로 바뀐다. 이런 기능은 모든 위치를 열거할 필요 없이 기본 디렉토리에 새로운 디렉토리를 늘릴 수 있도록 해 준다. 예를 들어 (sh 문법 사용):

 
INFOPATH=/local/info:
export INFOPATH

`/local/info'를 첫번째로 찾고, 그 다음에 기본 디렉토리를 찾는다. 앞에 콜론이 오거나, 두개의 콜론이 오는 것은 특별히 해석되지 않는다.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21.3 Installing Info Directory Files

Info 파일을 시스템에 설치할 때, install-info 프로그램을 써서 `dir' Info 디렉토리 파일을 변경할 수 있다. 보통 그 패키지의 makefile에서 Info 파일을 적절한 위치에 복사하고 나서 install-info를 실행한다.

Info 파일이 install-info와 동작하게 하려면, @dircategory@direntry를 Texinfo 소스 파일에 써야 한다. @direntry는 Info 디렉토리 파일에 추가할 메뉴 항목을 지정하고, @dircategory는 Info 디렉토리의 어느 부분에 집어 넣을 것인지를 지정한다. 다음은 이 매뉴얼에서 사용되는 명령이다.

 
@dircategory Texinfo documentation system
@direntry
* Texinfo: (texinfo).           The GNU documentation format.
* install-info: (texinfo)Invoking install-info. …
…
@end direntry

이렇게 하면 Info 파일에서 다음을 만든다:

 
INFO-DIR-SECTION Texinfo documentation system
START-INFO-DIR-ENTRY
* Texinfo: (texinfo).           The GNU documentation format.
* install-info: (texinfo)Invoking install-info. …
…
END-INFO-DIR-ENTRY

install-info 프로그램은 Info 파일에서 이 줄을 본다. 이렇게 install-info가 무엇을 해야 할지 알 수 있다.

@direntrydircategory 명령은 Texinfo 입력이 시작할 때, 첫번째 @node 명령 앞에 쓴다. 만약 그 뒤에 쓴다면, install-info는 알지 못한다.

Texinfo 소스 파일에서 @dircategory를 두번 이상 쓰면, 각각은 한개씩의 category를 지정한다; 새로운 메뉴 항목은 지정하는 각 하ㅇ목에 모두 차가된다. @direntry를 두번 이상 쓰면, 각각은 한개씩의 메뉴 항목이다; 각 메뉴 항목들은 지정된 각 category에 추가된다.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21.4 Invoking install-info

install-info는 Info 파일에서 메뉴 항목을 뽑아내 Info 시스템의 제일 상위 레벨인 `dir' 파일에 넣는다 (어떻게 `dir' 파일이 동작하는 지에 대한 설명은 앞의 절을 보라). 이것은 소프트웨어를 설치할 때나, 시스템의 메뉴얼들에서 dir 파일을 만들어 낼 때 주로 쓰인다. 사용법은:

 
install-info [option]… [info-file [dir-file]]

inffo-file이나 dir-file이 지정되지 않으면, 이 파일들을 지정하는 여러가지 옵션(아래에 설명됨)들이 있어야 한다. 컴파일시에 포함된 기본값은 없고, 표준 입력(standard input)은 절대 사용되지 않는다. install-info는 오직 한개의 Info 파일을 읽을 수 있고, 한번 실행할 때 오직 한개의 dir 파일만 쓴다.

만약 dir-file이 없으면 (지정되긴 했지만), install-info는 (항목이 하나도 없는) dir-file을 만든다.

옵션:

--delete

info-file의 항목들을 dir-file에서 제거한다. dir-file 내의 항목에서 파일의 이름은 반드시 info-file이어야 한다 (`.info'가 뒤에 붙은 경우를 제외하고). 이 옵션을 쓰면 어떤 새로운 항목도 추가하지 않는다.

--dir-file=name

Info 디렉토리 파일의 이름을 지정한다. 이것은 dir-file 인자를 쓴 것과 동일하다.

--entry=text

text를 Info 디렉토리 항목으로 넣는다; text는 Info 메뉴 항목의 형태이고, 그 뒤에 공백으로 시작하는 줄들이 더 올 수 있다. 한개 이상의 항목을 지정할 경우, 전부 추가된다. 어떤 항목도 지정하지 않는다면, Info 파일 자체의 정보에 의해 결정된다.

--help

기본적인 사용법과 가능한 옵션에 대한 사용법 메세지를 표시하고, 성공적으로 종료한다.

--info-file=file

설치할 Info 파일의 이름을 지정한다. 이것은 info-file 인자를 사용한 것과 같다.

--info-dir=dir

`--dir-file=dir/dir'와 같다.

--item=text

`--entry=text'와 같다. Info 디렉토리 항목은 사실 메뉴 항목이다.

--quiet

경고를 내지 않는다.

--remove

`--delete'와 같다.

--section=sec

이 파일의 항목을 sec section에 넣는다. 한개 이상의 section을 지정하면, 모든 항목들이 각각의 section에 추가된다. section을 지정하지 않는다면 Info 파일 자체내의 정보에 의해 결정된다.

--version

버전 정보를 출력하고, 성공적으로 종료한다.


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Autobuild on March, 29 2007 using texi2html 1.76.