The former Jekyll syntax used kramdown-flavoured markdown, which evolved separately from commonmark, the syntax that {pegboard} knows and that Pandoc-flavoured markdown extends. One of the key differences with the kramdown syntax is that it used something known as Inline Attribute Lists (IAL) to help define classes for markdown elements. These elements were formated as {: <attributes>} where <attributes> is replaced by class definitions and key/value pairs. They always appear after the relevant block which lead to code blocks that looked like this:

~~~
ls -larth /path/to/dir
~~~
{: .language-bash}

Moreover, to achieve the special callout blocks, we used blockquotes that were given special classes (which is an accessbility no-no because those blocks were not semantic HTML) and the nesting of these block quotes looked like this:

> ## Challenge
> 
> How do you list all files in a directory in reverse order by the time it was 
> last updated?
> 
> > ## Solution
> > 
> > ~~~
> > ls -larth /path/to/dir
> > ~~~
> > {: .language-bash}
> {: .solution}
{: .challenge}

One of the biggest challenges with this for authors was that, unless you used an editor like vim or emacs, this was difficult to write with all the prefixed blockquote characters and keeping track of which IALs belonged to which block.



carpentries/pegboard documentation built on Nov. 13, 2024, 8:53 a.m.