Render Docs, use of {index} and {next}

All

I am in the process of getting the admin guide developed. Working on the base shell at this time. In the main documentation, such as the user’s manual there are files called index.txt scattered around the directories that as far as I can tell are used to generate the links for the main table of contents and the next page links. I see {index} and {next} tags in the markdown and based on what I see in those text files, it makes sense that these are used to build the navigation.

What I can’t seem to figure out is how to get my pandoc template to process these tags on my local computer. This is what I have in my template right now:

<!DOCTYPE html>
<!-- Built on Frappe. https://frappe.io/ -->
<html$if(lang)$ lang="$lang$"$endif$$if(dir)$ dir="$dir$"$endif$>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0>
  <meta name="generator" content="frappe">
$for(author-meta)$
  <meta name="author" content="$author-meta$">
$endfor$
$if(date-meta)$
  <meta name="dcterms.date" content="$date-meta$">
$endif$
$if(keywords)$
  <meta name="keywords" content="$for(keywords)$$keywords$$sep$, $endfor$">
$endif$
  <title>$if(title)$ $title$ $endif$</title>
$if(quotes)$
  <style type="text/css">q { quotes: "“" "”" "‘" "’"; }</style>
$endif$
$if(highlighting-css)$
  <style type="text/css">
$highlighting-css$
  </style>
$endif$
$for(css)$
  <link rel="stylesheet" href="$css$">
$endfor$
$if(math)$
  $math$
$endif$
$for(header-includes)$
  $header-includes$
$endfor$
</head>
<body data-path="user">
$for(include-before)$
$include-before$
$endfor$
$if(title)$
<header>
<h1 class="title">$title$</h1>
$if(subtitle)$
<p class="subtitle">$subtitle$</p>
$endif$
$for(author)$
<p class="author">$author$</p>
$endfor$
$if(date)$
<p class="date">$date$</p>
$endif$
</header>
$endif$
$if(toc)$
<nav id="$idprefix$TOC">
$toc$
</nav>
$endif$
$body$
$for(include-after)$
$include-after$
$endfor$
</body>
</html>

Does anyone have any ideas they can provide? This template is essentially the default html5 one with a few edits at the top.

Thanks

1 Like

You can convert this template into markdown, add {index} to the end of it, build the documentation using

bench build-docs

I am writing on Windows and not Linux as a dev environment. What does bench build-docs do specifically to convert the {index} tag to html?

It replaces the {index} with the entries found in index.txt and {next} with the next topic.
You can view the code here