<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Authoring on OINK</title><link>https://lxghost.github.io/categories/authoring/</link><description>Recent content in Authoring on OINK</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Fri, 28 Aug 2026 00:08:16 +0800</lastBuildDate><atom:link href="https://lxghost.github.io/categories/authoring/index.xml" rel="self" type="application/rss+xml"/><item><title>Writing pages</title><link>https://lxghost.github.io/docs/write/pages/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/pages/</guid><description>&lt;p&gt;This page covers writing a documentation page end to end: where the file goes,&#10;the front matter, heading anchors, links, images, drafts, and the page end. It&#10;assumes the site already builds locally; if it does not yet, start with&#10;&lt;a href="https://lxghost.github.io/docs/start/"&gt;Quick start&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="new-page"&gt;Creating a page&#10;&lt;/h2&gt;&#10;&lt;p&gt;A page is a Markdown file under &lt;code&gt;content/&lt;/code&gt;, and its URL follows its position&#10;there: &lt;code&gt;content/docs/install.md&lt;/code&gt; is published as &lt;code&gt;/docs/install/&lt;/code&gt;. The Chinese&#10;translation is a &lt;code&gt;.zh.md&lt;/code&gt; file of the same name in the same directory, sharing&#10;one logical path with the English page.&lt;/p&gt;</description></item><item><title>Organizing content</title><link>https://lxghost.github.io/docs/write/organize/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/organize/</guid><description>&lt;p&gt;OINK needs no separate navigation configuration: the directory structure under&#10;&lt;code&gt;content/&lt;/code&gt; is the sidebar tree. This page covers how directories and files are&#10;arranged, section indexes, ordering, icons, folding, hiding, and multiple&#10;sidebar roots.&lt;/p&gt;&#10;&lt;h2 id="tree-is-sidebar"&gt;Directories are the sidebar&#10;&lt;/h2&gt;&#10;&lt;p&gt;A directory is a section (Hugo&amp;rsquo;s term), the Markdown files inside it are its&#10;pages, and a nested directory is a subsection. The sidebar renders that tree&#10;level by level, ordered by &lt;code&gt;weight&lt;/code&gt;, labelled with &lt;code&gt;linkTitle&lt;/code&gt; and falling back&#10;to &lt;code&gt;title&lt;/code&gt;. The tree on the left comes from this source:&lt;/p&gt;</description></item><item><title>Authoring</title><link>https://lxghost.github.io/docs/write/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/</guid><description>&lt;p&gt;This section covers the content types OINK supports: documentation pages, blog&#10;posts, books, release and download pages, and OpenAPI references. They share one&#10;Markdown dialect and one front matter schema, and each adds its own conventions.&lt;/p&gt;&#10;&lt;h2 id="anatomy"&gt;What a documentation page is made of&#10;&lt;/h2&gt;&#10;&lt;p&gt;A documentation page is one Markdown file. Between the two &lt;code&gt;---&lt;/code&gt; lines at the&#10;top is the front matter — the page&amp;rsquo;s metadata: title, short sidebar name,&#10;description, ordering. The rest is the body: ordinary Markdown plus OINK&amp;rsquo;s&#10;native components. Here is a complete page:&lt;/p&gt;</description></item><item><title>Page parameters</title><link>https://lxghost.github.io/docs/write/frontmatter/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/frontmatter/</guid><description>&lt;p&gt;This page is the complete table of page-level parameters, listing only the keys&#10;the OINK theme reads. Keys the theme reads solely to warn that they were&#10;renamed or removed are not listed here — they are in&#10;&lt;a href="https://lxghost.github.io/docs/design/migration/"&gt;Migration&lt;/a&gt;, and they are also kept out of the&#10;generated editor schema. Hugo&amp;rsquo;s own front matter fields (&lt;code&gt;slug&lt;/code&gt;, &lt;code&gt;url&lt;/code&gt;, &lt;code&gt;build&lt;/code&gt;,&#10;&lt;code&gt;sitemap&lt;/code&gt;, &lt;code&gt;expiryDate&lt;/code&gt; and the rest) work as usual; their meaning is in the&#10;&lt;a href="https://gohugo.io/content-management/front-matter/"&gt;Hugo documentation&lt;/a&gt;. Site&#10;parameters (&lt;code&gt;params.*&lt;/code&gt; in &lt;code&gt;hugo.yml&lt;/code&gt;) are in&#10;&lt;a href="https://lxghost.github.io/docs/customize/config/"&gt;Configuration&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Blog posts</title><link>https://lxghost.github.io/docs/write/blog/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/blog/</guid><description>&lt;p&gt;A blog post&amp;rsquo;s body is written exactly like a documentation page; the shell is&#10;what differs. A post carries a date, an author, tags and a featured image, the&#10;list is grouped by year newest first, and the section has an RSS feed. This page&#10;covers creating the blog section, a post&amp;rsquo;s front matter, featured images, list&#10;pagination and feeds.&lt;/p&gt;&#10;&lt;h2 id="layout"&gt;The blog directory&#10;&lt;/h2&gt;&#10;&lt;p&gt;A blog is a section under &lt;code&gt;content/&lt;/code&gt;, and &lt;code&gt;type: blog&lt;/code&gt; gives it the blog shell.&#10;Subdirectories divide it by publisher and audience, with posts sitting flat&#10;inside. Do not create year directories: the year grouping is generated by the&#10;list page.&lt;/p&gt;</description></item><item><title>Books</title><link>https://lxghost.github.io/docs/write/book/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/book/</guid><description>&lt;p&gt;A book is a content tree of &lt;code&gt;type: book&lt;/code&gt;: the directory decides chapter order,&#10;front matter decides chapter numbers, and figures, tables, equations and&#10;examples each carry a hand-written number and a stable anchor. Cross-references&#10;resolve in all four outputs, and the book&amp;rsquo;s root page can generate a&#10;whole-book print HTML.&lt;/p&gt;&#10;&lt;p&gt;Two prerequisites: the site&amp;rsquo;s &lt;code&gt;markup.goldmark&lt;/code&gt; has attribute lines and&#10;passthrough enabled (see &lt;a href="https://lxghost.github.io/docs/components/"&gt;Components&lt;/a&gt;); and&#10;&lt;code&gt;params.ui.shell_types&lt;/code&gt; still contains &lt;code&gt;book&lt;/code&gt; (the theme default includes it).&lt;/p&gt;</description></item><item><title>Releases and downloads</title><link>https://lxghost.github.io/docs/write/releases/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/releases/</guid><description>&lt;p&gt;OINK keeps release facts in two local places: a &lt;code&gt;release_url&lt;/code&gt; in a page&amp;rsquo;s&#10;front matter names the GitHub release this page is about, and&#10;&lt;code&gt;data/download/&amp;lt;key&amp;gt;.yaml&lt;/code&gt; says how to install it. Release cards, asset tables, download blocks and index pages all&#10;derive from those two. Nothing contacts GitHub at build time, and nothing claims&#10;a tag or an asset already exists.&lt;/p&gt;&#10;&lt;div class="td-callout td-callout--note" role="note"&gt;&#10; &lt;div class="td-callout__title"&gt;&lt;i class="td-callout__icon fa-solid fa-circle-info" aria-hidden="true"&gt;&lt;/i&gt;&lt;span class="td-callout__label"&gt;This page carries demonstration release facts&lt;/span&gt;&lt;/div&gt;&#10; &lt;div class="td-callout__body"&gt;&#10;&lt;p&gt;Its front matter holds a &lt;code&gt;release_url&lt;/code&gt; (OINK v0.4.0), and the card, asset&#10;table and download block below are really rendered. The checksums and asset&#10;filenames are fabricated: the URLs are derived locally from the repository and&#10;the tag, the files they point at do not exist in any real release, and the&#10;hashes here must not be used to verify anything.&lt;/p&gt;</description></item><item><title>API reference pages</title><link>https://lxghost.github.io/docs/write/openapi/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/write/openapi/</guid><description>&lt;p&gt;An API reference page is one OpenAPI specification plus one shortcode. The&#10;Swagger UI and Redoc runtimes ship with the theme (versions 5.32.13 and 2.5.3&#10;respectively, per the repository&amp;rsquo;s &lt;code&gt;VENDOR.json&lt;/code&gt;), load only on a page that uses&#10;them in its HTML output, and reach no external service at build time or in the&#10;browser. Swagger UI&amp;rsquo;s online validator is pinned off (&lt;code&gt;validatorUrl: null&lt;/code&gt;), so&#10;a published API page never sends its specification address anywhere.&lt;/p&gt;</description></item></channel></rss>