원클릭으로
document
Guide for writing Sagittarius documents. Use this when asked to write a user reference manual or other Sagittarius documents.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Guide for writing Sagittarius documents. Use this when asked to write a user reference manual or other Sagittarius documents.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Guide for developing Scheme libraries for Sagittarius. Use this when creating or modifying Scheme libraries in sitelib/, implementing SRFI, or adding new utility libraries.
Guide for developing Sagittarius compiler. Use this when you need to develop or optimize the compiler.
Guide for executing Sagittarius tests. Use this when asked to execute tests.
| name | document |
| description | Guide for writing Sagittarius documents. Use this when asked to write a user reference manual or other Sagittarius documents. |
doc/
sagittarius/ directory.sitelib/ directorySagittarius document can be written GFM with extra extensions.
Section starts with [§{n}] together with Markdown header notation
where {n} specifies the section level.
Header 1 section example:
[§1] Header 1 section
=====================
The header 1 section must be used for the top level section such as
Sagittarius extensions or R6RS Libraries.
Header 2 section example:
[§2] Header 2 section
---------------------
The header 2 section must be used for library level description.
Such as (sagittarius).
Header 3 section example:
### [§3] Header 3 section
The header 3 section must be used to split the library document
logically. Such as High level API or Low level API.
Header 4 section example:
#### [§4] Header 4 section
The header 4 section must be used to split the header 3 section into the finer section.
Document can include document or example code.
Document inclusion
* @[[path/to/markdown.md](path/to/markdown.md)]
The document inclusion must use the path as its title.
Example code inclusion
* @[-[Title of the example](path/to/the/example/code.scm)]
The code inclusion must specify the title and path.
When writing documentation for Sagittarius libraries, follow these guidelines:
Keep descriptions short and concise: Focus on essential information. Avoid lengthy explanations unless necessary for understanding.
Omit obvious examples: Do not provide examples for self-explanatory
procedures, such as predicates (foo?) or simple getters/setters.
Externalize long examples: If an example exceeds 15 lines, create
a file in the appropriate example/ subdirectory and use the example
code inclusion syntax instead of embedding it inline.
All examples must run: Every code example in the documentation must be executable and produce the expected output. Test each example using the Sagittarius interpreter before finalizing the documentation:
./build/sagittarius -Llib -Lsitelib -L'ext/*' -Dbuild test-example.scm
If an example requires extensions that may not be available (e.g., threads), simplify the example to demonstrate the concept without those dependencies.
For long examples:
example/ if it doesn't exist.scm file* @[-[Title describing the example](example/category/example-name.scm)]
Building document uses doc or online-doc target.
For POSIX like environment
make doc
make online-doc
For Windows
ninja doc
ninja online-doc
The result document will be doc directory of the building directory.
One file document is sagittarius-ref.html, multiple file document, aka
online document, is sagittarius-online-ref.html and its sections are
located in sections/ directory.
Before submitting: