This commit is contained in:
parent
80389b8053
commit
8f79bc5f3d
10 changed files with 291 additions and 140 deletions
|
|
@ -6,17 +6,17 @@ General Guidelines
|
|||
|
||||
* See also `nep1<https://nim-lang.github.io/Nim/nep1.html>`_ which should probably be merged here.
|
||||
* Authors should document anything that is exported; documentation for private
|
||||
procs can be useful too (visible via `nim doc --docInternal foo.nim`).
|
||||
procs can be useful too (visible via `nim doc --docInternal foo.nim`:cmd:).
|
||||
* Within documentation, a period (`.`) should follow each sentence (or sentence fragment) in a comment block.
|
||||
The documentation may be limited to one sentence fragment, but if multiple sentences are within the documentation,
|
||||
each sentence after the first should be complete and in present tense.
|
||||
* Documentation is parsed as a custom ReStructuredText (RST) with partial markdown support.
|
||||
* In nim sources, prefer single backticks to double backticks since it's simpler
|
||||
and `nim doc` supports it. Likewise with rst files: `nim rst2html` will render those as monospace, and
|
||||
adding `.. default-role:: code` to an rst file will also make those render as monospace when rendered directly
|
||||
and `nim doc`:cmd: supports it. Likewise with ``rst`` files: `nim rst2html`:cmd: will render those as monospace, and
|
||||
adding ``.. default-role:: code`` to an ``rst`` file will also make those render as monospace when rendered directly
|
||||
in tools such as github.
|
||||
* In nim sources, for links, prefer `[link text](link.html)` to `` `link text<link.html>`_ ``
|
||||
since the syntax is simpler and markdown is more common (likewise, `nim rst2html` also supports it in rst files).
|
||||
* (debatable) In nim sources, for links, prefer ``[link text](link.html)`` to `\`link text<link.html>\`_`:code:
|
||||
since the syntax is simpler and markdown is more common (likewise, `nim rst2html`:cmd: also supports it in ``rst`` files).
|
||||
|
||||
.. code-block:: nim
|
||||
|
||||
|
|
@ -29,7 +29,7 @@ Module-level documentation
|
|||
--------------------------
|
||||
|
||||
Documentation of a module is placed at the top of the module itself. Each line of documentation begins with double hashes (`##`).
|
||||
Sometimes `##[ multiline docs containing code ]##` is preferable, see `lib/pure/times.nim`.
|
||||
Sometimes `##[ multiline docs containing code ]##` is preferable, see ``lib/pure/times.nim``.
|
||||
Code samples are encouraged, and should follow the general RST syntax:
|
||||
|
||||
.. code-block:: Nim
|
||||
|
|
@ -76,11 +76,11 @@ Whenever an example of usage would be helpful to the user, you should include on
|
|||
## echo execCmdEx("git pull")
|
||||
## drawOnScreen()
|
||||
runnableExamples:
|
||||
# `runnableExamples` is usually preferred to `code-block`, when possible.
|
||||
# `runnableExamples` is usually preferred to ``code-block``, when possible.
|
||||
doAssert addThree(3, 125, 6) == -122
|
||||
result = x +% y +% z
|
||||
|
||||
The command `nim doc` will then correctly syntax highlight the Nim code within the documentation.
|
||||
The command `nim doc`:cmd: will then correctly syntax highlight the Nim code within the documentation.
|
||||
|
||||
Types
|
||||
-----
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue