August 05, 2021

Asciidoctor Smoke Test

asciidoctor asciidoc hugo

Smoke Test for AsciiDoc rendering in Hugo

This document is a test for asciidoctor’s features in hugo, the original is from Tackling Hugo Integration of Asciidoctor.

Emoji don’t show up so far: :plus: :spade: I have no idea yet how they are supposed to work.

Html Entities seems to be fine, let’s try +: +

This is a demonstration of role, which is turned into the class of the paragraph. And this is the preamble of this document.

First Steps with AsciiDoc

Inline markup
  • single quotes around a phrase place 'emphasis' (this is broken)
  • asterisks around a phrase make the text bold
  • double asterisks around one or more letters in a word make those letters bold
  • double underscore around a substring in a word emphasize that substring
  • use carrots around characters to make them superscript
  • use tildes around characters to make them subscript
  • to pass through HTML directly, surround the text with triple plus
  • characters can be escaped using a \
    • for instance, you can escape a quote inside emphasized text like 'Here's Johnny!'
  • you can safely use reserved XML characters like <, > and &, which are escaped when rendering
  • force a space between inline elements using the {sp} attribute
  • hold text together with an intrinsic non-breaking space attribute, {nbsp}
  • handle words with unicode characters like in the name Gregory Romé
  • claim your copyright ©, registered trademark ® or trademark ™

You can write text with inline links, optionally using an explicit link prefix. In either case, the link can have a query string.

If you want to break a line
just end it in a + sign
and continue typing on the next line.

Lists Upon Lists

Adjacent lists
  • this list
  • should join
  • to have
  • four items
Numbered lists
  1. These items
  2. will be auto-numbered
    1. and can be nested
  3. A numbered list can nest
    • unordered
    • list
    • items
Statement

I swear I left it in 'Guy's' car. Let's go look for it.

term
definition line two
another term
another definition, which can be literal (indented) or regular paragraph

This should be a standalone paragraph, not grabbed by the definition list.

  • first level written on two lines
  • first level

    with this literal text
    • second level
      • third level
        • fourth level
  • back to
    first level

Let’s make a horizontal rule…​


then take a break.

We’re back!

Want to see a Puppy? Puppy

more puppies?

puppy2
Figure 1. More puppies

hello, this is the content of the included file

Asciidoctor usage example, should contain 3 lines
doc = Asciidoctor::Document.new("*This* is it!", :header_footer => false)

puts doc.render

Here’s what it outputs (using the built-in templates):

<div class="paragraph">
  <p><strong>This</strong> is it!</p>
</div>

``Quotes''

AsciiDoc is 'so' powerful!

This verse comes to mind.

La la la

Here’s another quote:

When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth.

Sir Arthur Conan Doyle, The Adventures of Sherlock Holmes

Getting Literal

Want to get literal? Just prefix a line with a space (just one will do).
I'll join that party, too.

We forgot to mention in Numbered lists that you can change the numbering style.

  1. first item (yeah!)
  2. second item, looking so mono
  3. third item, mono it is!

That was literal

Passthrough block

Passthrough means pure HTML Ghost from this codepen

Wrap-up

Here’s a reference to the definition of another term, in case you forgot it.

When all else fails, head over to http://google.com.