about summary refs log tree commit diff
path: root/docs/doctool/Info/NDMarkup.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doctool/Info/NDMarkup.txt')
-rw-r--r--docs/doctool/Info/NDMarkup.txt80
1 files changed, 80 insertions, 0 deletions
diff --git a/docs/doctool/Info/NDMarkup.txt b/docs/doctool/Info/NDMarkup.txt
new file mode 100644
index 00000000..b4966223
--- /dev/null
+++ b/docs/doctool/Info/NDMarkup.txt
@@ -0,0 +1,80 @@
+
+    Title: NDMarkup
+_______________________________________________________________________________
+
+A markup format used by the parser, both internally and in <NaturalDocs::Parser::ParsedTopic> objects.  Text formatted in
+NDMarkup will only have the tags documented below.
+
+
+About: Top-Level Tags
+
+   All content will be surrounded by one of the top-level tags.  These tags will not appear within each other.
+
+   <p></p>         - Surrounds a paragraph.  Paragraph breaks will replace double line breaks, and single line breaks will
+                            be removed completely.
+
+   <code></code>   - Surrounds code or text diagrams that should appear literally in the output.
+
+   <h></h>         - Surrounds a heading.
+
+   <ul></ul>       - Surrounds a bulleted (unordered) list.
+   <dl></dl>       - Surrounds a description list, which is what you are reading.
+
+
+About: List Item Tags
+
+   These tags will only appear within their respective lists.
+
+   <li></li>       - Surrounds a bulleted list item.
+   <de></de>   - Surrounds a description list entry, which is the left side.  It will always be followed by a description list
+                         description.
+   <ds></ds>   - Surrounds a description list symbol.  This is the same as a description list entry, except that the content
+                         is also a referenceable symbol.  This occurs when inside a list topic.  This tag will always
+                         be followed by a description list description.
+   <dd></dd>   - Surrounds a description list description, which is the right side.  It will always be preceded by a description
+                         list entry or symbol.
+
+About: Text Tags
+
+   These tags will only appear in paragraphs, headings, or description list descriptions.
+
+   <b></b>         - Bold
+   <i></i>           - Italics
+   <u></u>         - Underline
+
+   <link></link>   - Surrounds a potential link to a symbol; potential because the target is not guaranteed to exist.  This
+                             tag merely designates an attempted link.  No other tags will appear between them.
+
+   <url></url>          - Surrounds an external link.  No other tags will appear between them.
+   <email></email>  - Surrounds an email address.  No other tags will appear between them.
+
+About: Amp Chars
+
+   These are the only amp chars supported, and will appear everywhere.  Every other character will appear as is.
+
+   &amp;    - The ampersand &.
+   &quot;    - The double quote ".
+   &lt;        - The less than sign <.
+   &gt;       - The greater than sign >.
+
+About: Tabs
+
+    NDMarkup will not contain tab characters, only spaces.  Any tab characters appearing in the source files will be
+    expanded/replaced as necessary.
+
+
+About: General Tag Properties
+
+   Since the tags are generated, they will always have the following properties, which will make pattern matching much
+   easier.
+
+   - Tags and amp chars will always be in all lowercase.
+   - There will be no properties or extraneous whitespace within tags.  They will only appear exactly as documented here.
+   - All code is valid, meaning tags will always be closed, <li>s will only appear within <ul>s, etc.
+
+   So, for example, you can match symbol links with /<link>([^<]+)<\/link>/ and $1 will be the symbol.  No surprises or
+   gotchas.  No need for sophisticated parsing routines.
+
+   Remember that for symbol definitions, the text should appear as is, but internally (such as for the anchor) they need to
+   be passed through <NaturalDocs::SymbolTable->Defines()> so that the output file is just as tolerant as
+   <NaturalDocs::SymbolTable>.