You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Splitting the single file The ALAN Manual into one file per chapter would allow us to achieve the following goals:
Publish the book on the GitHub Pages repository website in a more orderly manner.
Create an executable eBook for Windows (using a commercial eBook compiler, I have a few of them already).
Roadmap
We need to carry out some local tests first, and once (if) we get good results, we could start looking into automating the whole process of chunking the output book and updating the GH Pages website via some CI service (of course, the eBook creation will have to be done locally).
If we get to that stage, we could then think of publishing all ALAN-related documents (including the StdLib Manual, by fetching a pre-processed "coalesced" single-doc AsciiDoc source and build it inside this repo, since they share common assets).
A Few Side Notes
Installing asciidoctor-chunker under Windows also requires installing additional dependencies:
Unfortunately there doesn't seem to be any shortcut to this, since asciidoctor-chunker depends on a Roswell script, so there's no standalone binary version at the end of the line.
Once we've tested enough to come up with a safe "recipe" on how to use asciidoctor-chunker, we should be able to unload the burden on some CI service — but for creating the executable eBook I'll still need to have asciidoctor-chunker running locally, because of the proprietary book compiler software.
Maybe in the future, when we have more time at hand (and successfully managed to publish the chunked book both online and as an exe-book) we might look into creating a standalone binary tool to chunk the HTML documents, which possibly could be tailored to our needs.
This shouldn't be too hard, but it will definitely take time. I've peeked at the Lisp sources of asciidoctor-chunker, and the tasks it carries out are fairly straight forward (obviously, relying on some external libraries). So, we could use any language that supports similar libraries for parsing XML/HTML documents (e.g. Expat), etc.
We need to start experimenting with HTML chunking — i.e. splitting the single-file book into one file per chapter.
Currently, the only viable options seems the asciidoctor-chunker tool, created by @wshito.
Overview
Splitting the single file The ALAN Manual into one file per chapter would allow us to achieve the following goals:
Roadmap
We need to carry out some local tests first, and once (if) we get good results, we could start looking into automating the whole process of chunking the output book and updating the GH Pages website via some CI service (of course, the eBook creation will have to be done locally).
If we get to that stage, we could then think of publishing all ALAN-related documents (including the StdLib Manual, by fetching a pre-processed "coalesced" single-doc AsciiDoc source and build it inside this repo, since they share common assets).
A Few Side Notes
Installing asciidoctor-chunker under Windows also requires installing additional dependencies:
Unfortunately there doesn't seem to be any shortcut to this, since asciidoctor-chunker depends on a Roswell script, so there's no standalone binary version at the end of the line.
Once we've tested enough to come up with a safe "recipe" on how to use asciidoctor-chunker, we should be able to unload the burden on some CI service — but for creating the executable eBook I'll still need to have asciidoctor-chunker running locally, because of the proprietary book compiler software.
Maybe in the future, when we have more time at hand (and successfully managed to publish the chunked book both online and as an exe-book) we might look into creating a standalone binary tool to chunk the HTML documents, which possibly could be tailored to our needs.
This shouldn't be too hard, but it will definitely take time. I've peeked at the Lisp sources of asciidoctor-chunker, and the tasks it carries out are fairly straight forward (obviously, relying on some external libraries). So, we could use any language that supports similar libraries for parsing XML/HTML documents (e.g. Expat), etc.
References