| Age | Commit message (Collapse) | Author |
|
The HTML output file from asciidoctor is renamed to test.exp.html,
and HTML output file from this library is renamed to test.got.html.
The test.html in testdata is generated from ciigo, when running
"make serve-doc".
|
|
Link each supported features to their official document and add that
link as Reference in the SPECS.
Currently only checked and Document header.
|
|
This is to make the generated HTML from asciidoctor match with the
library.
Without it, all IDs are prefixed with "_".
|
|
Previously, we always set the ID prefix and separator default to "_" if
its not set, this cause all of the ID is prefixed with "_".
This changes use strict rules when generating ID following the Mozilla
specification [1] and latest AsciiDoc Language [2].
The idprefix must be ASCII string.
It must start with "_", "-", or ASCII letters, otherwise the "_" will
be added to the beginning.
If one of the character is not valid, it will replaced with "_".
The `idseparator` can be empty or single ASCII character ('_' or '-',
ASCII letter, or digit).
It is used to replace invalid characters in the REF_ID.
[1] https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id
[2] https://docs.asciidoctor.org/asciidoc/latest/sections/id-prefix-and-separator/
|
|
Minimize struct allocation,
* columnFormat: from 40 to 16 bytes (-24 bytes)
* document: from 400 to 392 bytes (-8 bytes)
* element: from 312 to 264 bytes (-48 bytes)
* elementAttribute: from 80 to 72 bytes (-8 bytes)
* elementInclude: from 128 to 120 bytes (-8 bytes)
* elementTable: from 88 to 64 bytes (-24 bytes)
* inlineParser: from 64 to 40 bytes (-24 bytes)
Plus all structs in the test files.
|
|
Signed-off-by: Shulhan <ms@kilabit.info>
|
|
Previously, when parsing cross reference we assume that if the string
contains upper-case letter then it's a label so we store it as title
to search for ID later.
The bug is when ID is set manually and its contains upper-case for
example "[#Id]".
This changes fix this issue by storing cross reference first, not
assuming it as ID or title, and then when doing rendering we check
whether its ID or title.
|
|
The latest update on share v0.25.1 remove the last boolean parameter
on lib/test.Assert().
|
|
If the em-dash strings "--" flanked by space, replace the space with
HTML symbol thin space.
|
|
This is to make it compatible with generated HTML from asciidoctor.
|
|
This is to allow the inline parser to pick it up as macro link.
|
|
|
|
If the list body contains continuation with open block, the whole open
block content should be treatent as sub-of block until it end with
"--".
|
|
ciigo is original repository name where the code splitted up into
library.
|
|
By using open block "--" we allow the list body content without adding
"+" for each empty line.
|
|
|
|
|
|
Previously, we read the raw content line by line. Unfortunately, this
technique did not work for "include" directive, where the included
file's content will be embedded to current content.
This changes split the initial raw content by lines to make it allow
injecting another lines when including directives exist.
|
|
There are basic things that need to be done before we can implement
the "include" directive, especially on how to embed the content of
included file into the content of current document.
|
|
Previously, the following description label will not work,
https://somewhere[A]:: B
This changes fix this issue.
|
|
|
|
Custom markers including "square", "circle", "disc", "none", "no-bullet",
"unstyled", and any strings that is not part of asciidoc internal styles.
|
|
|
|
|
|
While at tif, do not set table.hasHeader if the row does not end with
empty line.
|
|
If we have three columns, the first and second column width are
100/3 = 33.3333
but the last column should be 100 - (33.3333+33.3333) = 33.3334.
|
|
|
|
Table borders can be set by setting the "frame" and "grid" options.
|
|
If the cell contents contains multiple paragraphs, parse and render
each of them as separated block paragraph.
|
|
|
|
|
|
|
|
One of the most hardest task to finished after inline markup. It take
three refactoring until we get the current implementation.
To make the cell formatting works, we breaking down all table contents
into cells. When parsing a cells, we lookup the content before '|' and
after '\n'. If its a valid cell format, it will be set as cell format
for the next cell, otherwise it will considered as normal text.
|
|
|
|
Currently supported format with "cols" options are,
* setting number of columns,
* setting the horizontal and vertical alignment
* setting the column width
|
|
|
|
|
|
The following metadata has been implemented,
* "idprefix": changing the auto generated ID prefix
* "idseparator": changing the separator for auto generated ID
* "sectids": enabling or disabling auto generated ID
* "sectlinks": generate link on section title
* "sectanchors: generate an anchor, empty link, before section title
|
|
|
|
Also support setting and checking metadata revnumber, revdate, revremark,
and version-label.
|
|
|
|
The ToEmbeddedHTML will generate the document content only, without
header and footer.
|
|
This will allow literal paragraph between list, for example,
* A
literal
* B
|
|
Use case: "A `/**/` *B*", should generate the following HTML
A <code>/<strong></strong>/</code> <strong>B</strong>
|
|
Use cases,
* link:{attr-ref}[Alt text]
* video::{url}[...]
* image:{a}[X, link={y}]
|
|
|
|
|
|
|
|
|
|
|