Nim/doc
Andrey Makarov cde6b2aab8
Implement Pandoc Markdown concise link extension (#20304)
* Implement Pandoc Markdown concise link extension

This implements https://github.com/nim-lang/Nim/issues/20127.
Besides reference to headings we also support doing references
to Nim symbols inside Nim modules.

Markdown:
```
Some heading
------------

Ref. [Some heading].
```

Nim:
```
proc someFunction*() ...

... ## Ref. [someFunction]
```

This is substitution for RST syntax like `` `target`_ ``.
All 3 syntax variants of extension from Pandoc Markdown are supported:
`[target]`, `[target][]`, `[description][target]`.

This PR also fixes clashes in existing files, particularly
conflicts with RST footnote feature, which does not work with
this PR (but there is a plan to adopt a popular [Markdown footnote
extension](https://pandoc.org/MANUAL.html#footnotes) to make footnotes work).

Also the PR fixes a bug that Markdown links did not work when `[...]`
section had a line break.

The implementation is straightforward since link resolution did not
change w.r.t. RST implementation, it's almost only about new syntax
addition. The only essential difference is a possibility to add a custom
link description: form `[description][target]` which does not have an
RST equivalent.

* fix nim 1.0 gotcha
2022-09-04 14:52:21 -04:00
..
manual Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
advopt.txt Fixed description as option in advopt.txt (#19635) 2022-03-26 09:56:10 +01:00
apis.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
astspec.txt Markdown code blocks part 3 (#20117) 2022-08-04 09:32:23 +02:00
backends.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
basicopt.txt Implement Pandoc Markdown concise link extension (#20304) 2022-09-04 14:52:21 -04:00
contributing.md Implement Pandoc Markdown concise link extension (#20304) 2022-09-04 14:52:21 -04:00
destructors.md Markdown code blocks part 3 (#20117) 2022-08-04 09:32:23 +02:00
docgen.md Implement Pandoc Markdown concise link extension (#20304) 2022-09-04 14:52:21 -04:00
docgen_sample.nim fix #13218: avoid some irrelevant warnings for nim doc,rst2html,--app:lib, + other fixes (#13550) 2020-03-13 20:42:41 +01:00
docs.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
docstyle.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
drnim.md Markdown code blocks part 4 (#20189) 2022-08-12 14:33:43 -04:00
effects.txt Markdown code blocks part 4 (#20189) 2022-08-12 14:33:43 -04:00
estp.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
filelist.txt follow-up #17837: add Console for interactive sessions (#17930) 2021-05-06 10:58:01 +02:00
filters.md Markdown code blocks part 4 (#20189) 2022-08-12 14:33:43 -04:00
grammar.txt remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
hcr.md Markdown code blocks part 4 (#20189) 2022-08-12 14:33:43 -04:00
idetools.md Implement Pandoc Markdown concise link extension (#20304) 2022-09-04 14:52:21 -04:00
intern.md Implement Pandoc Markdown concise link extension (#20304) 2022-09-04 14:52:21 -04:00
keywords.txt language change: 'generic' and 'atomic' are not keywords anymore 2017-11-21 11:27:35 +01:00
koch.md Markdown code blocks part 4 (#20189) 2022-08-12 14:33:43 -04:00
lib.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
manual.md Implement Pandoc Markdown concise link extension (#20304) 2022-09-04 14:52:21 -04:00
manual_experimental.md top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
manual_experimental_strictnotnil.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
mm.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
mytest.cfg '#' value parcing is explained (disambiguated) (#12476) 2019-10-25 15:22:26 +02:00
nep1.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
nimc.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
nimdoc.cls RST: improve simple tables (#19859) 2022-06-04 07:03:03 +02:00
nimdoc.css Docs auto dark mode (#20188) 2022-08-21 16:56:12 -04:00
nimfix.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
nimgrep.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
nimgrep_cmdline.txt docs: fix some spelling errors (#19816) 2022-08-09 14:01:46 -04:00
niminst.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
nims.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
nimsuggest.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
overview.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
packaging.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
pegdocs.txt Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
readme.txt docs: fix some spelling errors (#19816) 2022-08-09 14:01:46 -04:00
refc.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
regexprs.txt follow-up #18013 - inline syntax highlighting (#18166) 2021-06-04 16:16:51 +02:00
rstcommon.rst follow-up #17692: more inline syntax highlighting (#17837) 2021-04-29 17:16:14 +02:00
sets_fragment.txt provide better error messages for large set (#20207) 2022-08-25 00:49:52 +02:00
spawn.txt Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
subexes.txt Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
testament.md [Testament] Extend and document message testing aids (#19996) 2022-09-01 17:52:13 +02:00
tools.md Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
tut1.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
tut2.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00
tut3.md Markdown code blocks part 5 (#20236) 2022-08-17 15:20:22 -04:00

============================
Nim's documentation system
============================

This folder contains Nim's documentation. The documentation
is written in a format called *reStructuredText*, a markup language that reads
like ASCII and can be converted to HTML automatically!