<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Customization on OINK</title><link>https://lxghost.github.io/docs/customize/</link><description>Recent content in Customization 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/docs/customize/index.xml" rel="self" type="application/rss+xml"/><item><title>Configuration</title><link>https://lxghost.github.io/docs/customize/config/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/config/</guid><description>&lt;p&gt;This is the single home of site parameters. Every key the theme reads has a row&#10;in one of the tables below, giving its type, default and a one-line description,&#10;and linking to the guide that covers it. The guides give pasteable snippets and&#10;never repeat the definitions. Page-level parameters (front matter) are in&#10;&lt;a href="https://lxghost.github.io/docs/write/frontmatter/"&gt;Page parameters&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;The tables are grouped by function, one &lt;code&gt;##&lt;/code&gt; each, and the anchors are&#10;referenceable — for example &lt;code&gt;/docs/customize/config/#sidebar&lt;/code&gt;. &lt;strong&gt;An empty&#10;default column means the theme has no default&lt;/strong&gt;: leave the key out and the&#10;feature is off.&lt;/p&gt;</description></item><item><title>Brand and appearance</title><link>https://lxghost.github.io/docs/customize/brand/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/brand/</guid><description>&lt;p&gt;This page covers a site&amp;rsquo;s appearance: the name and logo live in &lt;code&gt;hugo.yml&lt;/code&gt;,&#10;colours and fonts go through SCSS entry points, and page width and footer shape&#10;are parameters. It assumes the site already builds&#10;(&lt;a href="https://lxghost.github.io/docs/start/"&gt;Quick start&lt;/a&gt;).&lt;/p&gt;&#10;&lt;p&gt;There are four things to change: &lt;code&gt;hugo.yml&lt;/code&gt;, the icons under &lt;code&gt;static/&lt;/code&gt;,&#10;&lt;code&gt;assets/scss/_variables_project.scss&lt;/code&gt;, and&#10;&lt;code&gt;assets/scss/_styles_project.scss&lt;/code&gt;. &lt;strong&gt;Do not edit files inside the theme&#10;directory&lt;/strong&gt;: the theme is a Hugo Module, and an upgrade replaces the whole&#10;directory.&lt;/p&gt;</description></item><item><title>Home and landing pages</title><link>https://lxghost.github.io/docs/customize/home/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/home/</guid><description>&lt;p&gt;The home page is not a template but a data file: the &lt;code&gt;sections&lt;/code&gt; list in&#10;&lt;code&gt;data/home/&amp;lt;language&amp;gt;.yaml&lt;/code&gt; decides which sections the page has from top to&#10;bottom, and each section&amp;rsquo;s content is looked up by name in the same file. An&#10;ordinary page with &lt;code&gt;layout: landing&lt;/code&gt; uses the same sections.&lt;/p&gt;&#10;&lt;p&gt;Every section is rendered on the server. Prices, star counts, screenshots,&#10;avatars and download states all have to exist in the repository before Hugo&#10;starts; no section fetches data in the browser.&lt;/p&gt;</description></item><item><title>Navigation and menus</title><link>https://lxghost.github.io/docs/customize/navigation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/navigation/</guid><description>&lt;p&gt;This page covers the ways a reader moves between pages: the navbar menu, the&#10;section switcher, breadcrumbs, page actions, previous / next, and the footer.&#10;The sidebar tree and the outline belong to&#10;&lt;a href="https://lxghost.github.io/docs/customize/layout/"&gt;Layouts and page types&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Navigation has no second information architecture: the navbar comes from Hugo&amp;rsquo;s&#10;&lt;code&gt;menus.main&lt;/code&gt;, and the sidebar from the shape of &lt;code&gt;content/&lt;/code&gt;. The theme reads no&#10;parallel navigation tree such as a &lt;code&gt;docs.json&lt;/code&gt; or a &lt;code&gt;navigation.yaml&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Layouts and page types</title><link>https://lxghost.github.io/docs/customize/layout/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/layout/</guid><description>&lt;p&gt;This page covers a page&amp;rsquo;s skeleton: whether it has a sidebar, how wide that is,&#10;how deep the outline goes, and whether a section index is a list or cards. Where&#10;content goes is in &lt;a href="https://lxghost.github.io/docs/write/organize/"&gt;Organizing content&lt;/a&gt;; this page is&#10;only about the shell.&lt;/p&gt;&#10;&lt;p&gt;The rule is that &lt;strong&gt;the shell follows &lt;code&gt;type&lt;/code&gt;, not the path&lt;/strong&gt;. Documentation can&#10;live anywhere under &lt;code&gt;content/&lt;/code&gt; as long as it has &lt;code&gt;type: docs&lt;/code&gt;.&lt;/p&gt;&#10;&lt;h2 id="shell-types"&gt;Shell types&#10;&lt;/h2&gt;&#10;&lt;p&gt;&lt;code&gt;params.ui.shell_types&lt;/code&gt; lists the types that use the reading shell with a&#10;sidebar:&lt;/p&gt;</description></item><item><title>Search</title><link>https://lxghost.github.io/docs/customize/search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/search/</guid><description>&lt;p&gt;OINK&amp;rsquo;s search is local search: Hugo generates one JSON index per language at&#10;build time, the reader&amp;rsquo;s browser downloads it, and the search runs in the&#10;browser. No crawler, no account, no CDN, and no network access. The theme leaves&#10;it off, and one line of configuration turns it on.&lt;/p&gt;&#10;&lt;p&gt;The entry point to search is the command palette; how to open it and what else&#10;it holds are in &lt;a href="https://lxghost.github.io/docs/customize/panel/"&gt;Command palette&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Command palette</title><link>https://lxghost.github.io/docs/customize/panel/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/panel/</guid><description>&lt;p&gt;The command palette is the site&amp;rsquo;s one modal entry point: searching pages,&#10;copying this page&amp;rsquo;s Markdown, switching language, switching version and jumping&#10;to a site&amp;rsquo;s own links all happen in one dialog. It is assembled together with&#10;local search: with &lt;code&gt;params.offline_search&lt;/code&gt; off, the palette, the index and Lunr&#10;all stay out of the page — see &lt;a href="https://lxghost.github.io/docs/customize/search/"&gt;Search&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="open"&gt;Opening the palette&#10;&lt;/h2&gt;&#10;&lt;div class="td-table-scroll td-table-scroll--static"&gt;&#10;&lt;table&gt;&#10; &lt;thead&gt;&#10; &lt;tr&gt;&#10; &lt;th scope="col"&gt;How to open it&lt;/th&gt;&#10; &lt;th scope="col"&gt;What opens&lt;/th&gt;&#10; &lt;/tr&gt;&#10; &lt;/thead&gt;&#10; &lt;tbody&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Click the search box in the navbar or sidebar&lt;/td&gt;&#10; &lt;td&gt;Full search mode&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;kbd&gt;⌘&lt;/kbd&gt; / &lt;kbd&gt;Ctrl&lt;/kbd&gt; + &lt;kbd&gt;K&lt;/kbd&gt;&lt;/td&gt;&#10; &lt;td&gt;Full search mode; press again to close&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;kbd&gt;/&lt;/kbd&gt;&lt;/td&gt;&#10; &lt;td&gt;Full search mode&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;The backslash key&lt;/td&gt;&#10; &lt;td&gt;Command-only mode (equivalent to a prefilled &lt;code&gt;&amp;gt;&lt;/code&gt;)&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;kbd&gt;f&lt;/kbd&gt; / &lt;kbd&gt;c&lt;/kbd&gt;&lt;/td&gt;&#10; &lt;td&gt;The same two, provided by &lt;a href="https://lxghost.github.io/docs/customize/keyboard/"&gt;keyboard navigation&lt;/a&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Typing a query beginning with &lt;code&gt;&amp;gt;&lt;/code&gt; in the box&lt;/td&gt;&#10; &lt;td&gt;Command-only mode&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;p&gt;&lt;kbd&gt;/&lt;/kbd&gt;, backslash, &lt;kbd&gt;f&lt;/kbd&gt; and &lt;kbd&gt;c&lt;/kbd&gt; are all bare single keys&#10;and stand down for typing: while focus is in an input, textarea, select or&#10;&lt;code&gt;contenteditable&lt;/code&gt;, and while an input method is composing, they type an ordinary&#10;character. The modified &lt;kbd&gt;⌘&lt;/kbd&gt;/&lt;kbd&gt;Ctrl&lt;/kbd&gt; + &lt;kbd&gt;K&lt;/kbd&gt; has no such&#10;restriction and opens the palette even from inside a text box.&lt;/p&gt;</description></item><item><title>Keyboard navigation</title><link>https://lxghost.github.io/docs/customize/keyboard/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/keyboard/</guid><description>&lt;p&gt;OINK&amp;rsquo;s interactive pages come with a set of single-key shortcuts: WASD moves&#10;through the sidebar tree, &lt;span class="td-kbd-sequence"&gt;&lt;kbd&gt;J&lt;/kbd&gt;&lt;/span&gt; &lt;span class="td-kbd-sequence"&gt;&lt;kbd&gt;K&lt;/kbd&gt;&lt;/span&gt; jump between headings,&#10;&lt;span class="td-kbd-sequence"&gt;&lt;kbd&gt;Q&lt;/kbd&gt;&lt;/span&gt; &lt;span class="td-kbd-sequence"&gt;&lt;kbd&gt;E&lt;/kbd&gt;&lt;/span&gt; page back and forward, and a few more toggle the&#10;theme, the language and the command palette. They are on by default, every&#10;binding stands down for typing, and they can be turned off per site or per page.&lt;/p&gt;&#10;&lt;p&gt;Keyboard navigation keeps no second copy of any state: expanding and collapsing&#10;reuses the sidebar&amp;rsquo;s own arrow buttons, section jumps read the right-hand&#10;outline, and switching language and theme reuse the command palette&amp;rsquo;s actions.&#10;Keyboard order and mouse order are therefore the same order.&lt;/p&gt;</description></item><item><title>Languages</title><link>https://lxghost.github.io/docs/customize/i18n/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/i18n/</guid><description>&lt;p&gt;OINK uses Hugo&amp;rsquo;s multilingual model and adds no directory conventions of its&#10;own: configure a &lt;code&gt;languages&lt;/code&gt; block, and keep a translation beside its original&#10;in the same directory, distinguished by a filename suffix. What follows covers&#10;what a single-language site has to change to become bilingual, plus the two&#10;things bilingual sites get wrong: resource ownership and heading anchors.&lt;/p&gt;&#10;&lt;h2 id="enable"&gt;Enabling a second language&#10;&lt;/h2&gt;&#10;&lt;div class="td-code td-code--titled" id="td-code-b1c1e7d4-fence-0" data-td-code data-td-code-auto-id&#10; data-td-language="yaml" data-td-line-count="19" role="group" aria-labelledby="td-code-b1c1e7d4-fence-0-title"&gt;&#10; &lt;div class="td-code__header"&gt;&#10; &lt;span class="td-code__filename" id="td-code-b1c1e7d4-fence-0-title" title="hugo.yml"&gt;hugo.yml&lt;/span&gt;&#10; &lt;/div&gt;&#10; &lt;div class="td-code__viewport" id="td-code-b1c1e7d4-fence-0-viewport" data-td-code-viewport&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;defaultContentLanguage&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;en&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;languages&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;en&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;label&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;English&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;locale&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;en-US&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;title&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;OINK&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;params&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;A Hugo theme for engineering docs&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;zh&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;label&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;简体中文&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;locale&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;zh-CN&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;title&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;OINK&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;params&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;为工程而设计的 Hugo 文档主题&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;time_format_default&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;2006年1月2日&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;time_format_blog&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;2006年1月2日&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;p&gt;That is this site&amp;rsquo;s configuration. What the four fields do:&lt;/p&gt;</description></item><item><title>Versions</title><link>https://lxghost.github.io/docs/customize/versions/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/versions/</guid><description>&lt;p&gt;When a product has several supported versions, its documentation usually needs&#10;versions too. The theme provides two things: a version switcher in the navbar,&#10;and an archive banner on older sites. The deployment layout is the site&amp;rsquo;s&#10;decision — the theme does no cross-version build, and each version is its own&#10;Hugo build.&lt;/p&gt;&#10;&lt;h2 id="version-menu"&gt;The version switcher&#10;&lt;/h2&gt;&#10;&lt;p&gt;List the versions that should appear in the menu under &lt;code&gt;params.versions&lt;/code&gt;. When&#10;that list is non-empty, a branch-icon menu appears in the navbar&amp;rsquo;s utility area,&#10;with the same content in an icon-only upward menu in the footer&amp;rsquo;s bottom bar.&lt;/p&gt;</description></item><item><title>Taxonomies</title><link>https://lxghost.github.io/docs/customize/taxonomy/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/taxonomy/</guid><description>&lt;p&gt;A directory tree gives a page one path; a taxonomy gives it a second. The same&#10;PostgreSQL backup document sits under an &amp;ldquo;Operations&amp;rdquo; directory and is also&#10;reachable from a &amp;ldquo;backup&amp;rdquo; tag page. Enabling it needs only Hugo&amp;rsquo;s &lt;code&gt;taxonomies:&lt;/code&gt;&#10;configuration: the term pages, filter chips, rail cloud and navbar panel are all&#10;generated by the theme, with no template to write.&lt;/p&gt;&#10;&lt;p&gt;This page carries a category. The &amp;ldquo;Categories: Customization&amp;rdquo; line under the&#10;title, and the counted chips under the outline in the right column, need no&#10;configuration on the page itself.&lt;/p&gt;</description></item><item><title>Repository links and page info</title><link>https://lxghost.github.io/docs/customize/repository/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/repository/</guid><description>&lt;p&gt;The repository-related entries in the &lt;strong&gt;action menu&lt;/strong&gt; at the right of the&#10;breadcrumb row are derived from a few &lt;code&gt;github_*&lt;/code&gt; parameters, and the &amp;ldquo;last&#10;modified&amp;rdquo; line at the page end comes from git history. Both assume the content&#10;lives in a GitHub-style repository.&lt;/p&gt;&#10;&lt;h2 id="link-configuration"&gt;Four keys wire up every link&#10;&lt;/h2&gt;&#10;&lt;p&gt;Every repository-related entry in the action menu derives from these keys:&lt;/p&gt;&#10;&lt;div class="td-code td-code--titled" id="td-code-dded75a2-fence-0" data-td-code data-td-code-auto-id&#10; data-td-language="yaml" data-td-line-count="5" role="group" aria-labelledby="td-code-dded75a2-fence-0-title"&gt;&#10; &lt;div class="td-code__header"&gt;&#10; &lt;span class="td-code__filename" id="td-code-dded75a2-fence-0-title" title="hugo.yml"&gt;hugo.yml&lt;/span&gt;&#10; &lt;/div&gt;&#10; &lt;div class="td-code__viewport" id="td-code-dded75a2-fence-0-viewport" data-td-code-viewport&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;params&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;github_repo&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;https://github.com/pgsty/oink.pgsty.com&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# the documentation source repository&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;github_project_repo&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;https://github.com/pgsty/oink&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# the product repository (optional)&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;github_branch&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;main&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# defaults to main&lt;/span&gt;&lt;span class="w"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;github_subdir&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# path from the repository root to the Hugo site root&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;p&gt;That is this site&amp;rsquo;s real configuration. With it filled in, this page&amp;rsquo;s action&#10;menu points at:&lt;/p&gt;</description></item><item><title>Print</title><link>https://lxghost.github.io/docs/customize/print/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/print/</guid><description>&lt;p&gt;Printing one page needs no configuration: the shell (sidebar, outline, navbar,&#10;buttons) all carries &lt;code&gt;d-print-none&lt;/code&gt;, so the browser&amp;rsquo;s &lt;code&gt;Cmd/Ctrl+P&lt;/code&gt; yields a&#10;clean body. That is why the theme has no per-page &amp;ldquo;print this page&amp;rdquo; button.&lt;/p&gt;&#10;&lt;p&gt;What does need configuration is the other thing: assembling a whole section (or&#10;a whole book) and all its pages into one continuous document with a table of&#10;contents. What follows covers enabling it, the structure of the print view, and&#10;how to exclude pages.&lt;/p&gt;</description></item><item><title>AI-agent support</title><link>https://lxghost.github.io/docs/customize/agents/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lxghost.github.io/docs/customize/agents/</guid><description>&lt;p&gt;An HTML page carries a sidebar, scripts and styles, and a model has to strip&#10;that shell before reading it. OINK emits the same content a second time as plain&#10;Markdown: one &lt;code&gt;.md&lt;/code&gt; per page, one &lt;code&gt;llms.txt&lt;/code&gt; index at the site root, and a &amp;ldquo;copy&#10;as Markdown&amp;rdquo; button on the page. All three are build-time artifacts, with no&#10;runtime service and no content negotiation.&lt;/p&gt;&#10;&lt;p&gt;All three have to be declared by the site under &lt;code&gt;outputs&lt;/code&gt;; the theme does not&#10;turn them on. Two further artifacts, equally opt-in, serve an agent that wants&#10;more than one page at a time: a full-text bundle per section and a navigation&#10;tree per language.&lt;/p&gt;</description></item></channel></rss>