summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-04-18Release asciidoctor-go v0.7.1 (2025-04-18)v0.7.1Shulhan
[BUG FIX] **Fix the logic when applying default embedded CSS.** By default, the document contains ":stylesheet:" attribute, which means using the default embedded CSS. To disable it, unset the attribute using ":stylesheet!:". To overwrite it, set the attribute to path of CSS file ":stylesheet: my.css". [ENHANCEMENT] Export the constant for document attribute "stylesheet".
2025-04-18all: fix the logic when applying default embedded CSSShulhan
By default, the document contains ":stylesheet:" attribute, which means using the default embedded CSS. To disable it, unset the attribute using ":stylesheet!:". To overwrite it, set the attribute to path of CSS file ":stylesheet: my.css". While at it, export the DocAttrStylesheet.
2025-04-18all: disable generating HTML meta for "generator" in testsShulhan
The "generator" value will changes on each releases, so better to disable it to minimize noise during release commit.
2025-04-18Release asciidoctor-go v0.7.0 (2025-04-18)v0.7.0Shulhan
[NEW FEATURE] Support include directive inside block code. Example of block code with include directive, ---- ... include::file[] ... ---- [NEW FEATURE] Support document attribute "docdir" The "docdir" attribute contains the full path of the directory that contains the source document. By default it is set to the directory where the Document resided. [NEW FEATURE] Add default HTML stylesheet. The generated HTML now contains the default stylesheet. The stylesheet is copied from HTML file generated by Asciidoctor v2.0.23.
2025-04-18README: update notes related to Includes directiveShulhan
Changes, * Link the Includes feature to the official documentation * Update Unsupported Markup related to Includes * Update list of TODO related to Includes * Move CHANGELOG to Development section
2025-04-18all: update all dependenciesShulhan
2025-04-18all: support include directive inside block codeShulhan
Example of block code with include directive, ---- ... include::file[] ... ----
2025-04-18all: remove loggingShulhan
2025-02-18all: remove the "nolint" tagShulhan
The nolint tag is to ignore being linted by golangci-lint. Since we are not using golangci-lint anymore, we can remove it.
2025-02-16all: support document attribute "docdir"Shulhan
The "docdir" attribute contains the full path of the directory that contains the source document. By default it is set to the directory where the Document resided.
2025-02-16all: move setting attribute to DocumentShulhan
Some of attribute may depends on property of the Document.
2025-02-13testdata: redact the "Last updated" time in test-parser HTML filesShulhan
Every time we execute "make test-parser", the generated HTML files will changes the "Last updated xxx" (where xxx is the time its executed). This changes prevent this unnecessary diff in the future.
2025-02-13README: update the completed features on Lists and Description ListsShulhan
Use the title names from the latest AsciiDoc Language Documentation.
2025-02-13all: add default HTML stylesheetShulhan
The generated HTML now contains the default stylesheet. The stylesheet is copied from HTML file generated by Asciidoctor v2.0.23.
2025-02-13testdata: add test data for unordered list with custom marker "[none]"Shulhan
2025-02-13testdata: fix version number in test dataShulhan
2025-02-01Release asciidoctor-go v0.6.2 (2025-02-01)v0.6.2Shulhan
[BUG FIX] Fix section detected as paragraph after list and comment. Previously, given the following markup, ---- * Sub list + Sub list content. //}}} //{{{ == Sub 2 //}} ---- The section "Sub 2" will be parsed as paragraph instead of new section. [CHORE] In the linter, we replace the fieldalignment and shadow using our internal gocheck command. This linters actually have an API that can be combined into a program, which provided by package "pakakeh.go/lib/goanalysis".
2025-02-01README: mention ciigo as the front-end tools of this libraryShulhan
2025-02-01make: replace external linters with internal command gocheckShulhan
The fieldalignment and shadow is linter from golang.org/x/tools. This linters actually have an API that can be combined into a program, which provided by package "pakakeh.go/lib/goanalysis".
2025-02-01go.mod: update all dependenciesShulhan
2025-01-21all: fix section detected as paragraph after list and commentShulhan
Previously, given the following markup, ---- * Sub list + Sub list content. //}}} //{{{ == Sub 2 //}} ---- The section "Sub 2" will be parsed as paragraph instead of new section.
2025-01-06go.mod: update all dependencies and Go to version 1.23.4Shulhan
2024-12-08Release asciidoctor-go v0.6.1 (2024-12-08)v0.6.1Shulhan
=== Bug fixes * all: fix error log when failed to open included file:: The log use the wrong variable when printing path for failed include file. * all: fix reading include file when parent path is absolute:: Previously, if the parent document is opened using absolute path and it contains include directive, the included file will fail to read because the parent path is joined with current working directory.
2024-12-08go.mod: update all dependenciesShulhan
2024-10-15make: serve doc on non-common portShulhan
Using 8080 is too common and has cause conflict with some service on my development laptop.
2024-10-15all: group all image related method and functions into single fileShulhan
This is to make it easy to see how it parsed and how it written to HTML, make the code more searchable. While at it, add test for block image.
2024-10-15all: fix missing SPDX copyright and license on test fileShulhan
2024-10-13all: fix reading include file when parent path is absoluteShulhan
Previously, if the parent document is opened using absolute path and it contains include directive, the included file will fail to read because the parent path is joined with current working directory.
2024-10-13all: fix error log when failed to opend included fileShulhan
2024-09-07Release asciidoctor-go v0.6.0 (2024-09-07)v0.6.0Shulhan
=== Breaking changes * all: rename struct "AttributeEntry" to "DocumentAttribute" This is to make the struct is clear that it represent the document attribute. * all: rename struct "AttributeEntry" to "DocumentAttribute" This is to make the struct is clear that it represent the document attribute. * all: refactoring DocumentAttribute into struct Using struct limit the value to only string, while some attributes can be an integer value, for example "leveloffset". === New features * all: support document attribute "leveloffset" The ":leveloffset:" on document attribute allow increment or decrement the heading level on included files. Reference: https://docs.asciidoctor.org/asciidoc/latest/directives/include-with-leveloffset/ === Enhancements * all: use strict document header format Previously, an empty line before Document Title cause the parser stop parsing the document header, now an empty lines are skipped. Also document attribute can be place anywhere, either before or after title, and in between attributes; now it can be only placed after revision or author or title. * all: remove unnecessary TrimRight Each lines to be parsed has been trimmed on the first load, so there is no need to do it again, on some cases.
2024-09-07go.mod: update dependencyShulhan
2024-09-07Makefile: replace golangci-lint with "go vet"Shulhan
This is the second we remove golangci-lint. Previously, we replace it with revive, now we replace it with go internal tools "go vet". The problem is the same, golangci-lint does not works when compiled or using gotip. Also, on VM with 8GB memory, it will crash due to OOM.
2024-09-07all: fix signature of [Element.WriteByte]Shulhan
The WriteByte is the method in that conform [io.ByteWriter].
2024-08-16all: remove unnecessary TrimRightShulhan
Each lines to be parsed has been trimmed on the first load, so there is no need to do it again, on some cases.
2024-08-16all: support document attribute "leveloffset"Shulhan
The ":leveloffset:" on document attribute allow increment or decrement the heading level on included files. Reference: https://docs.asciidoctor.org/asciidoc/latest/directives/include-with-leveloffset/
2024-08-13all: refactoring DocumentAttribute into structShulhan
Using struct limit the value to only string, while some attributes can be an integer value, for example "leveloffset".
2024-08-13all: rename meta or metadata words to document attributeShulhan
The idea is to provide consistent naming for metadata and attribute. The AsciiDoctor documentation mostly name them as document attribute.
2024-08-13all: replace licensing format to REUSE.tomlShulhan
Using ".reuse/dep5" has been deprecated since REUSE v3.2. While at it, add missing license to file "const.go".
2024-08-13all: rename struct "AttributeEntry" to "DocumentAttribute"Shulhan
This is to make the struct is clear that it represent the document attribute.
2024-08-13all: add element kind Section 0Shulhan
The elKindSection0 is the Document Title, the line that start with "= ".
2024-08-12go.mod: update all dependenciesShulhan
2024-08-12all: use strict document header formatShulhan
Previously, an empty line before Document Title cause the parser stop parsing the document header, now an empty lines are skipped. Also document attribute can be place anywhere, either before or after title, and in between attributes; now it can be only placed after revision or author or title.
2024-04-04Release asciidoctor-go v0.5.2 (2023-04-04)v0.5.2Shulhan
This release only contains chores. * all: replace module "share" with "pakakeh.go" The "share" module has been moved to new repository with new name at "https://sr.ht/~shulhan/pakakeh.go". For more information see the change logs at "pakakeh.go" module. * all: comply with linter recommendations Most of the code changes related to refactoring if-else witch switch statement. * all: replace if-else bytes.Equals with static string case comparisons Using string instead of [bytes.Equal] give code much more readable.
2024-03-05all: replace if-else bytes.Equals with static string case comparisonsShulhan
2024-03-05all: comply with linter recommendationsShulhan
2024-03-05all: replace module "share" with "pakakeh.go"Shulhan
2023-12-14Release asciidoctor-go v0.5.1 (2023-12-14)v0.5.1Shulhan
=== Bug fixes * all: fix custom IDs on first section always got replaced Any custom ID on the first section always replaced with the subsection because, first, when detecting preamble we did not check for line with kind ID "[[…​]]" an short ID "[#…​]". Second, when parsing preamble we did not stop when we found line kind ID and short ID. This preamble thing is kind of annoying. We need to revisit again how to detect preamble, maybe not calling separate block parser, but making it linear as the default first child of parent element. === Chores * all: replace "lib/parser" with "strings/parser" The lib/parser has been deprecated in share module. * all: remove dependency to "github.com/shuLhan/share/lib/debug" * all: replace linter golangci-lint with revive and shadow The golangci-lint does not output any results anymore. Either we are getting good at writing Go or the linter itself is become less good. We also have seen that the latest golangci-lint is failed to build with Go tip, a simple "make" on the golangci-lint never success in my experiences. This changes fix all the output reported by the revive and shadow.
2023-12-13all: replace "lib/parser" with "strings/parser"Shulhan
The lib/parser has been deprecated.
2023-12-10all: remove dependency to "github.com/shuLhan/share/lib/debug"Shulhan
2023-12-10go.mod: set minimum Go to version 1.20 and update all dependenciesShulhan