tajmone / hugo-book

AsciiDoc reprint of "The HUGO Book"
https://git.io/hugo-book
Other
9 stars 1 forks source link
asciidoc asciidoctor documentation hugo hugo-book hugo-if if interactive-fiction

CC BY-NC-SA 4.0 License  book version  build status

The Hugo Book

AsciiDoc port of The Hugo Book, written by Kent Tessman, 2004.

Released under CC BY-NC-SA 4.0 license with explicit permission by Kent Tessman.

Project created by Tristano Ajmone in 2019/09/29.

To read The Hugo Book on-line, as a single HTML document:


Table of Contents


Project Contents

About

The Hugo Book is the official manual for the Hugo Interactive Fiction authoring system (1995–2006), a cross platform system for creating and playing text adventures with advanced multimedia support, created by Kent Tessman and released under BSD 2-Clause License.

Historically, The Hugo Book was distributed in PDF format, which can be downloaded in the Hugo section of the IF Archive:

I wanted to port the book to AsciiDoc using an open source license, so I e-mailed Kent Tessman; he kindly granted his permission to do so under CC BY-NC-SA 4.0, and sent me his latest Word document of the The Hugo Book.

I chose not to share the original Word document in the repository due to the potential leaks of personal information associated with MS Word files. For comparison between the AsciiDoc version and the original book, please refer to the PDF version from the IF Archive.

Having the chance and honour to consult directly the original author, I grabbed the opportunity to fix a few typos and propose some minor edits here and there, all of which were supervised and approved by Kent Tessman — all changes are listed in the CHANGES.md document, with links to the repository Issues were these changes were proposed, discussed and approved.

None of these changes are significant beyond what might be part of an Errata, so this AsciiDoc port of The Hugo Book still qualifies as the first edition, but was revised in January, 2020 with the author's supervision.

AsciiDoc Sources

The Hugo Book was split into multiple AsciiDoc files to simplify maintainance as well as to allow republishing single chapters individually.

To convert the AsciiDoc sources into HTML, run the docs_src/build.sh script.

Single-File AsciDoc Version

For convenience, the docs_src/build.sh script also creates a single-file AsciiDoc version, by preprocessing the source files via the AsciiDoc Coalescer:

This standalone version is provided for simplifying handling the book as a single source in external projects —

WARNINGDo not edit the preprocessed file, for all changes would be lost on the next build! All changes must be submitted to the sources in the /docs_src/ folder.

HTML Version

Currently The Hugo Book is available only in HTML format in this project:

We're planning to add more output formats to the build toolchain, at some point in the future — any help on this front is highly appreciated.

Converting to Other Formats

AsciiDoc being format-agnostic, you should be able to build the book with any Asciidoctor backend, out of the box.

To optimize the final look of the book, you might have to tweak the template used by the backend/converter to cover the custom styles adopted in this project (see CONVENTIONS.md). Furthermore, to beautify the Hugo code examples you'll probably have to create your own Hugo syntax definition for the syntax highlighter employed by the specific backend/converter.

If you've converted The Hugo Book to other formats, please let use know about it.

Releases and Versioning

The project adopts Semantic Versioning 2.0.0 (aka SemVer) as its releases versioning scheme. Release versions refer to the AsciiDoc sources of The Hugo Book, for these constitute the core of the project — all other assets (templates, stylesheets, etc.) and converted documents (HTML, etc.) are just added bonuses.

Any changes to the AsciiDoc sources will result in a version change and a new tagged release, whereas changes to other contents won't. Commits on master branch are not limited to tagged releases, therefore all contents except AsciiDoc sources might undergo any number of changes between tagged releases (including Hugo Book documents in formats like HTML, which might undergo template and stylesheets updates).

End users who rely on this repository for their own projects can count on the following expectations:

Why AsciiDoc?

These are the main reasons why I wanted to make The Hugo Book available in AsciiDoc format (via the Asciidoctor Ruby implementation).

I strongly believe that AsciiDoc is an excellent format for sharing documents, and I hope that in the future we'll see more IF-related documents being ported to AsciiDoc, which could greatly simplify preservation and maintenance of the IF literature and its re-usability across different projects and output formats.

Contributing

The project is open to contributions. All pull requested should be made to the dev branch.

Just ensure that your pull request passes the Travis CI build tests, which you can verify locally by running the validate.sh script, before submitting the PR.

There are no plans to update the book contents, so contributions should be limited to AsciiDoc formatting and styling, the build chain, supporting new output formats, improving existing templates, and similar enhancements that don't affect the actual text of the book.

If you really want to work on the book contents, you should do so in a fork of this repository, because the goal of this project is to provide the latest Hugo Book edition officially approved by the original author, Kent Tessman.

License

Explicit permission was granted from Kent Tessman to republish The Hugo Book under the terms of the CC BY-NC-SA 4.0 license.

The Hugo Book (c) by Kent Tessman, 2004.

The Hugo Book is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

You should have received a copy of the license along with this work. If not, see http://creativecommons.org/licenses/by-nc-sa/4.0/.

Acknowledgements

I would like to thank...

Credits

This project also employs resources created by third parties. For the full licenses text, see the README file in the folders hosting the specific resources — below is just a quick credits summary.

Base16 Colour Schemes

For the Sass/CSS themes this project uses the following Base16 colour schemes:

The Base16 project (MIT License) was created by Chris Kempson:

The Base16 SCSS schemes are taken from the Base16 Sass project by Tristano Ajmone:

Base16 Sass is released under MIT License:

MIT License

Copyright (c) 2019 Tristano Ajmone <tajmone@gmail.com>
https://github.com/tajmone/Base16-Sass

Copyright (c) 2012 Chris Kempson (http://chriskempson.com)
https://github.com/chriskempson/base16-builder

For more details and the full license text, see:

Base2Tone Colour Schemes

For the Sass/CSS themes this project uses the following Base2Tone colour schemes:

The Base2Tone project was created by Bram de Haan (@atelierbram), based on Simurai's Duotone Themes for the Atom editor:

The project is released under MIT License:

The MIT License (MIT)

Copyright (c) 2016 Bram de Haan

For more details and the full license text, see:

The Asciidoctor Project

This project employs various assets taken from The Asciidoctor Project, mostly in adapted form. For more details and the full license texts, see:

Asciidoctor Extensions Lab

The following Asciidoctor extensions and scripts were taken from the Asciidoctor Extensions Lab:

Released under MIT License:

The MIT License

Copyright (C) 2014-2016 The Asciidoctor Project

The Highlight TreeProcessor Asciidoctor extension (Ruby) was adapted by Tristano Ajmone from the original highlight-treeprocessor.rb file.

Asciidoctor Backends

The files inside the /haml/ folder were adapted by Tristano Ajmone from the original Haml HTML5 templates taken from the Asciidoctor Backends project:

Released under MIT License:

The MIT License

Copyright (C) 2012-2016 Dan Allen and the Asciidoctor Project

External Links

Other Hugo-related projects on GitHub: