사용자부터 기여자까지 ASP를 위한 문서 프레임워크입니다.
Python 3.10
필요
Clindoc을 설치하려면 git 저장소에서 Clindoc을 복제하면 됩니다.
git clone https://github.com/Owrel/clindoc.git
그런 다음 Clindoc 디렉터리로 이동합니다.
cd clindoc
마지막으로 다음을 실행하여 패키지를 설치합니다.
pip install .
Clindoc에 사용 가능한 모든 옵션을 보려면 다음을 실행하세요.
clindoc -h
Clindoc을 사용하면 다양한 옵션을 지정하여 사용자 정의 문서를 만들 수 있습니다.
예를 들어 다음과 같은 폴더 구조가 있다고 가정해 보겠습니다.
sudoku
├── encoding
│ └── sudoku.lp
└── input.lp
다음 명령을 사용하여 sudoku 폴더에 대한 문서를 생성할 수 있습니다(clindoc/examples/sudoku 디렉터리에 있다고 가정).
clindoc
지시문은 특별한 주석이며 다음과 같이 식별됩니다.
%@directive(param_1,...,param_n)
또는 선택적 설명 포함
%@directive(param_1,...,param_n) -> Description
메모
다음은 관련 정규 표현식(이름이 지정된 그룹 포함)입니다.
* @ * (?P< tag_name > [ a - z A - Z ] + ) * ( (?P< parameters > [ ^ - > ] * ) ) * ( - > * (?P< description > [ ^ \ n ] * ) ) ?
인코딩을 섹션별로 분할할 수 있습니다. 그렇게 하려면 섹션 이름을 매개변수로 사용하는 section/1
지시어를 추가하면 됩니다. 예를 들면 다음과 같습니다:
%@section(Constraints) -> List all of the integrity constraints
:- . ..
:- . ..
코드를 더 잘 이해하기 위해 사용되는 변수에 대한 정의를 제공하는 것이 가능합니다. var
지시문은 변수(대문자)를 고유한 매개변수로 사용합니다.
%@var(X) -> X refer the the x axis position
조건자에 정의를 제공하는 것, 즉 조건자가 의미하는 바를 제공하는 것도 가능합니다. 여기서 predicate
지시문은 서명(식별자로 작동)과 기본 변수라는 2개의 인수를 취합니다. 예를 들어(스도쿠 예제에서 발행됨):
%@predicate(sudoku/3,sudoku(X,Y,V) ) -> The cell (`X`, `Y`) has value `V` with `0
예를 들어 특정 줄이 수행하는 작업에 대한 설명을 추가하기 위해 특정 줄에 주석을 달 수도 있습니다(스도쿠 예제에서 실행됨).
%- Can't repeat values per row
:- sudoku( X , Y , V ), sudoku( X '' , Y , V ), X ! = X '' .
사용 가능한 모든 옵션은 다음과 같습니다.
Clindoc - Generate documentation for ASP files
options:
-h, --help show this help message and exit
Global Clindoc parameters:
--project_name PROJECT_NAME, -p PROJECT_NAME
Name of the project
--src_dir SRC_DIR, -s SRC_DIR
Directory containing the LP files from which to generate the documentation
--description DESCRIPTION, --desc DESCRIPTION
Description of the project
--doc-dir DOC_DIR, -d DOC_DIR
The folder where the documentation in rst format will be generated. If not specified, it will default to [src-dir]/docs/)
--out-dir OUT_DIR, -b OUT_DIR
Directory where Sphinx will output the generated documentation (if not specified, defaults to [src-dir]/docs/build)
--builder BUILDER Sphinx output format parameter (refer to parameter builder sphinx. Can be any builder supported by Sphinx)
--clean (flag) remove [doc-dir] and [out-dir] before running. Please be sure that you saved any hand-made modification
--no-sphinx-build (flag,debug) skip Sphinx build
--no-rst-build (flag,debug) skip rst build section
--conf-path CONF_PATH
Path to a configuration file (json format). It can be created from the --dump-conf [path_to_conf] command. Any parameters entered in the command line will be ignored.
--dump-conf DUMP_CONF
Path of a file where the configuration will be dumped. The json file will include all of the configuration you've entered in the command line. It can be used later as default configuration using --path-conf [path_to_conf]
-v, --version Print the version and exit
User Documentation parameters:
--userdoc.exclude (flag) component will be excluded from the documentation
Contributor Documentation parameters:
--contributordoc.exclude
(flag) component will be excluded from the documentation
--contributordoc.group-by CONTRIBUTORDOC.GROUP_BY
How the contributor documentation will group the different elements. "section" or "type"
--contributordoc.hide-uncommented
(flag) hide non-commented or non-defined var, rules...
--contributordoc.hide-code
(flag) hide source code
Dependency graph parameters:
--dependencygraph.exclude
(flag) component will be excluded from the documentation
--dependencygraph.format DEPENDENCYGRAPH.FORMAT
Format of the graphs
Source files parameters:
--source.exclude (flag) component will be excluded from the documentation
--source.exclude-file [SOURCE.EXCLUDE_FILE ...]
source file(s) that will be excluded from source documentation section
KRR@UP - https://github.com/krr-up
Clindoc 모듈을 가져오고 원하는 매개변수를 제공하여 Python 스크립트에서 Clindoc을 사용할 수도 있습니다.
import os
from clindoc import Clindoc
print ( os . getcwd ()) # /path/to/clindoc
c = Clindoc ({ 'src_dir' : 'examples/mapf' })
c . build_documentation ()
dict에 포함된 매개변수는 명령줄에서 사용할 수 있는 옵션과 동일합니다. 단, - 문자는 _ 및 로 바꿔야 합니다. 하위 디렉토리로 대체되어야 합니다. 예를 들어 다음 명령줄은 다음과 같습니다.
clindoc --contributordoc.hide-code
Python이 생성됩니다.
c = Clindoc ({ 'contributordoc' :
{ 'hide_code' : True }
})
c . build_documentation ()
이를 통해 문서를 기존 Python 스크립트 및 자동화 프로세스에 통합할 수 있으므로 문서 작성 시 더 많은 유연성과 자동화가 가능합니다.
"test.py" 파일에는 사용할 수 있는 다양한 매개변수의 예가 포함되어 있습니다.
포츠담대학교 | 포타스코 솔루션