DOC++에 `-h' 옵션을 주어 실행하면 DOC++에서 제공하는 명령행 옵션에 대한 한줄짜리 설명을 길게 출력한다. 그렇지만, 우리는 초보자들이 작성한 docified 소스로 DOC++을 실행하는 방법을 이해할 수 있는, 더 자세한 설명을 제공하려고 한다.DOC++의 명령행에는 여러가지 옵션과 파일, 디렉토리 리스트가 올 수 있다. 첫번째 파일 이름 뒤에서는 옵션이 없는 경우도 있다. DOC++로 전달되는 모든 파일은 주어진 순서대로 읽어서 문서를 생성한다.
모든 디렉토리는 재귀적으로 탐색하게 되고 모든 파일 *.h* 또는 *.java (`-J' 명령행 옵션에 따라 다르다)을 해석한다. 그렇지만, 입력 파일을 하나의 메인 입력 파일에 `@Include:' 지시자를 지정하는 것이 바람직하다.
옵션은 `-' 문자가 앞에 오고, 그 뒤에 하나 또는 두개의 글자가 오며, 빈칸으로 구분되는 인자가 올 수도 있다.
명령행 옵션은 세가지 다른 방식이 섞여 있다. 첫번째 형태는 제어 매개변수로 선택된 형태인 HTML(기본값) 또는 LaTeX(`-t'로 선택할 수 있다)에 독립적이다. 이 옵션은 다음과 같다:
- -A
- 선언을 발견할 때마다, DOC++로 하여금 매뉴얼 엔트리를 선언하도록 한다. 여기에서는 DOC++ 주석으로 문서화하던 아니던 상관없다.
- -c
- DOC++ 주석으로 C++ 스타일의 `//' 주석을 사용할 수 있도록 한다.
- -h
- 아무것도 하지 않고, 단지 모든 옵션에 대한 한줄짜리 설명을 출력한다.
- -H
- 포맷팅 언어로 HTML만 사용하도록 한다.
- -J
- DOC++을 자바 모드로 두어 C/C++ 대신 자바로 해석한다.
- -k
- 기반 클래스도, 자식 클래스도 아닌 클래스에 대한 클래스 그래프를 생성한다.
- -nd
- `#define' 매크로를 무시하도록 지시한다.
- -p
- DOC++에서 문서에 private 클래스 멤버도 포함하도록 한다. 이 옵션을 지정되지 않으면 private 멤버는 (docify를 실행할 때마다) 문서에서 나타나지 않는다.
- -q
- DOC++을 빠른 운영 모드로 전환하는데, 이로써 생성되는 문서 크기가 늘어난다.
- -t
- HTML보다 LaTeX 출력을 생성하도록 지시한다.
- -u
- 클래스 그래프를 그릴 때, 기반 클래스에서 파생된 클래스에 대해 화살표를 그린다.
- -v
- DOC++을 verbose 모드로 바꾸어 문서를 더 자세하게 출력한다. 문서를 디버깅할때 도움이 될 것이다.
다음의 명령행 옵션은 HTML 출력을 선택한 경우로, `-t' 옵션이 전달된경우는 해당되지 않는다:
- -a
- 이 옵션이 지정되면, DOC++에서 클래스 멤버를 나열하는데 HTML 테이블을 사용한다. 이로써 모든 멤버의 이름이 정렬된다.
- -b
- ``-a''와 같지만 모서리 있는 테이블이 쓰인다는 것이 다르다.
- -B <file>
- DOC++에서 만들어내는 모든 HTML 페이지마다 <file>을 끝에 추가한다. 이로써 DOC++ 로고를 제거하고 출력을 취향대로 바꿀 수 있다.
- -d <name>
- 이 옵션은 디렉토리 <name>을 지정하면, 여기서 HTML 파일과 gif가 생성된다. 지정하지 않으면, 현재 디렉토리가 쓰이게 된다. 지정한 디렉토리가 존재하지 않으면, DOC++에서 만든다.
- -f
- DOC++에서 각 HTML 페이지에 소스 파일을 포함하도록 지시한다. 이 소스 파일에는 매뉴얼 엔트리가 선언되어 있다.
- -F
- ``-f''와 비슷하지만, 소스 파일의 경로를 완전히 써주어야 한다는 것이 다르다.
- -g
- DOC++에서 수식에 대한 gif 이미지와 문서에서 `\TEX{}'를 생성하지 않도록 지정한다. 이 옵션은 DOC++을 호출할 때 처리 시간을 줄여준다, 그렇지만 주의할 것은, DOC++에서는 이미 만들어진 gif 이미지에 대하여 데이터베이스를 관리하고 있어서, 이러한 gif는 이미 존재하는 경우 생성되지 않는다. 그렇지만, 시스템에 LaTeX, dvips, ghostscript, ppmtools가 설지되어 있지 않다면, 반드시 이 옵션을 주어야 한다. 그렇지 않으면 DOC++에서 에러를 낸다.
- -G
- DOC++에서 모든 gif 이미지를 다시 만들도록 지정한다. 이미 존재하는 경우에도 해당한다. 이 옵션은 데이터베이스가 깨진 경우에 유용하다.
- -i
- HTML 문서를 생성할 때 상속된 멤버를 보여주지 않도록 지정한다.
- -j
- 클래스 그래프를 그릴 때 자바 애플릿을 생성하지 않도록 한다.
- -r
- 도스 파일시스템에서 8자가 넘는 긴 파일 이름을 사용할 때만 이 옵션을 붙여준다.
- -S
- 문서 엔트리를 알파벳순으로 정렬한다.
- -T <file>
- DOC++에서 생성하는 HTML 문서의 헤더로 <file> 을 사용한다. 이 옵션으로 DOC++ 로고 대신 다른 파일을 붙일 수 있다.
마지막으로 다음의 명령행 옵션은 DOC++의 LaTeX 출력을 조절한다.
- -ec
- Only generates the class graph.
- -ef <file>
- Reads the LaTeX environment from <file>.
- -ei
- Only generates the index.
- -eo <option>
- Adds <option> to LaTeX's `\documentclass'.
- -ep <package>
- Adds `\usepackage{package}' to the LaTeX environment.
- -et <file>
- Uses the contents of <file> as LaTeX title page.
- -D
- Sets the minimum depth (number of levels) in the TOC.
- -l
- Switches off the generation of the LaTeX environment. This should be used if you intend to include the documentation in some LaTeX document.
- -o <file>
- Sets the output file name. If not specified, the output is printed to stdout.
- -s
- Instead of generating a manual from the manual entries, DOC++ will generate a source code listing. This listing contains all normal C or C++ comments typeset in LaTeX quality. Every line is preceeded with its line number.
LaTeX의 출력을 바꾸려면 스타일 파일인 ``docxx.sty''를 이해하고 편집 하여야 한다. (유감스럽게도 이 방법에 대해서는 아직 문서가 없다) HTML 출력은 아래 여섯개의 파일을 통해서 바꿀 수 있다:
이러한 파일들이 현재 디렉토리에서 발견되면, HTML 페이지의 해당하는 부분을 그 파일 내용으로 치환한다. `indexHeader.inc'와 `hierHeader.inc' 파일은 ``<HTML><TITLE> ...''로 시작해야 한다. classHeader.inc 파일은 ``<BODY> ...''로 시작해야 하는데, 이러한 페이지들이 DOC++에서 제목 부분이 되기 때문이다.
- indexHeader.inc
- 색인 HTML 페이지의 머리말
- indexFooter.inc
- 색인 HTML 페이지의 꼬리말
- hierHeader.inc
- 클래스 계층구조 HTML 페이지의 머리말
- hierFooter.inc
- 클래스 계층구조 HTML 페이지의 꼬리말
- classHeader.inc
- 다른 모든 HTML 페이지의 머리말
- classFooter.inc
- 다른 모든 HTML 페이지의 꼬리말
예를 들어 이 문서를 LaTeX 형식으로 생성하려면 다음과 같이 한다.
doc++ -v -t -o doc.tex -ep a4wide doc.dxxHTML 버전의 경우에는 다음과 같은 명령으로 생성할 수 있다.doc++ -d html doc.dxx여러분도 보다시피, dxx 문서 자체는 DOC++을 이용하여 하나의 소스 문서에서 두가지 다른 출력을 지원하기 위해 필요하다.
Alphabetic index Hierarchy of classes