blog.hackliberty.org/posts/papermod/papermod-faq/index.html

361 lines
30 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html><html lang=en dir=auto>
<head><meta charset=utf-8>
<meta http-equiv=x-ua-compatible content="IE=edge">
<meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no">
<meta name=robots content="index, follow">
<title>FAQs | HackLiberty Blog</title>
<meta name=keywords content="PaperMod">
<meta name=description content="Frequently Asked Questions">
<meta name=author content="Aditya Telange">
<link rel=canonical href=/posts/papermod/papermod-faq/>
<link crossorigin=anonymous href=/assets/css/stylesheet.min.ec8da366ca2fb647537ccb7a8f6fa5b4e9cd3c7a0d3171dd2d3baad1e49c8bfc.css integrity="sha256-7I2jZsovtkdTfMt6j2+ltOnNPHoNMXHdLTuq0eSci/w=" rel="preload stylesheet" as=style>
<script defer crossorigin=anonymous src=/assets/js/highlight.min.7680afc38aa6b15ddf158a4f3780b7b1f7dde7e91d26f073e6229bb7a0793c92.js integrity="sha256-doCvw4qmsV3fFYpPN4C3sffd5+kdJvBz5iKbt6B5PJI=" onload=hljs.initHighlightingOnLoad()></script>
<link rel=icon href=/favicon.ico>
<link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png>
<link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png>
<link rel=apple-touch-icon href=/apple-touch-icon.png>
<link rel=mask-icon href=/safari-pinned-tab.svg>
<meta name=theme-color content="#2e2e33">
<meta name=msapplication-TileColor content="#2e2e33">
<noscript>
<style>#theme-toggle,.top-link{display:none}</style>
</noscript><meta property="og:title" content="FAQs">
<meta property="og:description" content="Frequently Asked Questions">
<meta property="og:type" content="article">
<meta property="og:url" content="/posts/papermod/papermod-faq/"><meta property="article:section" content="posts">
<meta property="article:published_time" content="2021-01-20T00:00:00+00:00">
<meta property="article:modified_time" content="2021-01-20T00:00:00+00:00">
<meta name=twitter:card content="summary">
<meta name=twitter:title content="FAQs">
<meta name=twitter:description content="Frequently Asked Questions">
<script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"FAQs","item":"/posts/papermod/papermod-faq/"}]}</script>
<script type=application/ld+json>{"@context":"https://schema.org","@type":"BlogPosting","headline":"FAQs","name":"FAQs","description":"Frequently Asked Questions","keywords":["PaperMod"],"articleBody":"Intro Well be using yml/yaml format for all examples down below, I recommend using yml over toml as it is easier to read.\n You can find any YML to TOML converters if necessary.\n Override theme template By Hugos Lookup Order, you can override any part of a theme that you want. The following is a quick example.\nLets say you wish the list was different. All you have to do is copy the list template:\nyour-site/themes/papermod/layouts/_defaults/list.html And paste it under your own layouts folder:\nyour-site/layouts/_defaults/list.html Then youre free to make any changes you want to the list. When Hugo builds your site, your copy of list.html will be used instead of the themes list.html.\n Enable Social-Metadata and SEO These include OpenGraph, Twitter Cards and Schema.\nparams: env: production or set HUGO_ENV as “production” in system env-vars\n Failed to find a valid digest in the integrity attribute for resource … ? Read about How Subresource Integrity helps: Subresource_Integrity\nWhy was the asset not loading ? : How_browsers_handle_Subresource_Integrity\nSolution:\nSet the following in config.yml\nparams: assets: disableFingerprinting: true Linked Issues:\n https://stackoverflow.com/questions/65056585/hugo-theme-not-loading https://stackoverflow.com/questions/65040931/hugo-failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource https://blog.gerardbeckerleg.com/posts/hugo-failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource/ Bundling Custom css with themes assets For adding custom css to be bundled inside one minimized css Create folder in yout project directory as\n.(site root) ├── config.yml ├── content/ ├── theme/hugo-PaperMod/ └── assets/ └── css/ └── extended/ All css files inside assets/css/extended will be bundled !\nNote: blank.css is just the placeholder so that it doesnt break the theme when no files are present under assets/css/extended\nLinked Issues:\n Papermod Theme: How to add custom CSS? Custom Head / Footer Custom css/js can be added by way mentioned below.\n.(site root) ├── config.yml ├── content/ ├── theme/hugo-PaperMod/ └── layouts ├── partials │ ├── comments.html │ ├── extend_footer.html Create a html page in directory structure as shown above.\nContents of extend_head.html will be added to head of page.\nand contents of extend_footer.html will be added to bottom of page.\n Add menu to site You can add menu entries which will appear in the header of every page.\nTo do so, add a menu section to your sites config.yml:\nmenu: main: - identifier: categories name: categories url: /categories/ weight: 10 - identifier: tags name: tags url: /tags/ weight: 20 - identifier: example name: example.org url: https://example.org weight: 30 name controls what will be displayed for the menu entry. url sets the URL that the entry points to. weight is used to control the positioning of entries.\nFor more information on menus, see the Hugo wiki page.\n Pin a Post Post can be pinned/ displayed top on the list by adding a weight= var to page-variables\nexample:\n--- title: \"My Important post\" date: 2020-09-15T11:30:03+00:00 weight: 1 --- --- title: \"My 2nd Important post\" date: 2020-09-15T11:30:03+00:00 weight: 2 --- Adding Custom Favicon(s) We support the following paths under /static directory and can be added accordingly.\n favicon.ico favicon-16x16.png favicon-32x32.png apple-touch-icon.png safari-pinned-tab.svg Favicon(s) can be generated by Favicon.io\nand can be simply put in /static folder.\n Other way is to add favicon(s) NOT located in /static folder.\nIn site config add the following:\nparams: assets: favicon: \"\" favicon16x16: \"\" favicon32x32: \"\" apple_touch_icon: \"\" safari_pinned_tab: \"\" absolute url means direct links to external resource: ex. https://web.site/someimage.png example:\nparams: assets: favicon: \"/favicon.ico\" favicon16x16: \"/favicon-16x16.png\" favicon32x32: \"/favicon-32x32.png\" apple_touch_icon: \"/apple-touch-icon.png\" safari_pinned_tab: \"/safari-pinned-tab.svg\" Centering image in markdown Add #center after image to center align an image\n![name](path/to/image.png#center) When using figure shortcode\nuse align=center to center image with captions\nex.\n{{figure align=center src=\"image.jpg\" }} Using Hugos Syntax highlighter “chroma” Disable Highlight.js in site config.yml\nparams: assets: disableHLJS: true Set hugos markdown styling in site config.yml\nmarkup: highlight: # anchorLineNos: true codeFences: true guessSyntax: true lineNos: true # noClasses: false style: monokai If you want lineNos: true, the background wont be proper. This will only work with noClasses: false or pygmentsUseClasses: true. Read Generate Syntax Highlighter CSS\nAdd the following to assets/css/extended/custom.css\n.chroma { background-color: unset; } More Info : Configure Markup - Highlight\n Search not working ? If you are using a CDN to server assets from a different domain, search would break\nWhy? Take a look at fastsearch.js#L35.\nWe fetch the index.json (where the search function looks for the keywords typed) one level up of the website search.min.js is hosted on.\nWe have used this insted of assigning baseURL so as to work with multilingual websites ex. example.com/fr/ and websites being placed under a subdirectory ex. example.com/blog/.\nTo fix for single language websites hosting assets from CDN, this you may override fastsearch.js#L35 and placing appropriate URL as in\nxhr.open(\"GET\", \"https://example.com/index.json\"); References Override a Hugo theme ","wordCount":"785","inLanguage":"en","datePublished":"2021-01-20T00:00:00Z","dateModified":"2021-01-20T00:00:00Z","author":{"@type":"Person","name":"Aditya Telange"},"mainEntityOfPage":{"@type":"WebPage","@id":"/posts/papermod/papermod-faq/"},"publisher":{"@type":"Organization","name":"HackLiberty Blog","logo":{"@type":"ImageObject","url":"/favicon.ico"}}}</script>
</head>
<body class=dark id=top>
<script>localStorage.getItem("pref-theme")==="light"&&document.body.classList.remove('dark')</script>
<header class=header>
<nav class=nav>
<div class=logo>
<a href=/ accesskey=h title=" (Alt + H)">
<img src=/hackliberty.png alt=logo aria-label=logo height=35> </a>
<span class=logo-switches>
<button id=theme-toggle accesskey=t title="(Alt + T)"><svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg><svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg>
</button>
</span>
</div>
<ul id=menu>
<li>
<a href=/posts/ title=Posts>
<span>Posts</span>
</a>
</li>
<li>
<a href=/archives/ title=Archive>
<span>Archive</span>
</a>
</li>
<li>
<a href=/search/ title="Search (Alt + /)" accesskey=/>
<span>Search</span>
</a>
</li>
<li>
<a href=/series/ title=Series>
<span>Series</span>
</a>
</li>
<li>
<a href=/tags/ title=Tags>
<span>Tags</span>
</a>
</li>
</ul>
</nav>
</header>
<main class=main>
<article class=post-single>
<header class=post-header>
<div class=breadcrumbs><a href=/>Home</a></div>
<h1 class=post-title>
FAQs<sup><span class=entry-isdraft>&nbsp;&nbsp;[draft]</span></sup>
</h1>
<div class=post-meta><span title="2021-01-20 00:00:00 +0000 UTC">January 20, 2021</span>&nbsp;·&nbsp;4 min&nbsp;·&nbsp;Aditya Telange
</div>
</header> <div class=toc>
<details>
<summary accesskey=c title="(Alt + C)">
<span class=details>Table of Contents</span>
</summary>
<div class=inner><ul>
<li>
<a href=#intro aria-label=Intro>Intro</a></li>
<li>
<a href=#override-theme-template aria-label="Override theme template">Override theme template</a></li>
<li>
<a href=#enable-social-metadata-and-seo aria-label="Enable Social-Metadata and SEO">Enable Social-Metadata and SEO</a></li>
<li>
<a href=#failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource-- aria-label="Failed to find a valid digest in the &amp;lsquo;integrity&amp;rsquo; attribute for resource &amp;hellip; ?">Failed to find a valid digest in the &lsquo;integrity&rsquo; attribute for resource &mldr; ?</a></li>
<li>
<a href=#bundling-custom-css-with-themes-assets aria-label="Bundling Custom css with theme&amp;rsquo;s assets">Bundling Custom css with theme&rsquo;s assets</a></li>
<li>
<a href=#custom-head--footer aria-label="Custom Head / Footer">Custom Head / Footer</a></li>
<li>
<a href=#add-menu-to-site aria-label="Add menu to site">Add menu to site</a></li>
<li>
<a href=#pin-a-post aria-label="Pin a Post">Pin a Post</a></li>
<li>
<a href=#adding-custom-favicons aria-label="Adding Custom Favicon(s)">Adding Custom Favicon(s)</a></li>
<li>
<a href=#centering-image-in-markdown aria-label="Centering image in markdown">Centering image in markdown</a></li>
<li>
<a href=#using-hugos-syntax-highlighter-chroma aria-label="Using Hugo&amp;rsquo;s Syntax highlighter &amp;ldquo;chroma&amp;rdquo;">Using Hugo&rsquo;s Syntax highlighter &ldquo;chroma&rdquo;</a></li>
<li>
<a href=#search-not-working- aria-label="Search not working ?">Search not working ?</a></li>
<li>
<a href=#references aria-label=References>References</a>
</li>
</ul>
</div>
</details>
</div>
<div class=post-content><h2 id=intro>Intro<a hidden class=anchor aria-hidden=true href=#intro>#</a></h2>
<ul>
<li>
<p><strong>We&rsquo;ll be using <code>yml/yaml</code> format for all examples down below, I recommend using <code>yml</code> over <code>toml</code> as it is easier to read.</strong></p>
</li>
<li>
<p>You can find any <a href="https://www.google.com/search?q=yml+to+toml">YML to TOML</a> converters if necessary.</p>
</li>
</ul>
<hr>
<h2 id=override-theme-template>Override theme template<a hidden class=anchor aria-hidden=true href=#override-theme-template>#</a></h2>
<p>By Hugo&rsquo;s Lookup Order, you can override any part of a theme that you want. The following is a quick example.</p>
<p>Let&rsquo;s say you wish the <code>list</code> was different. All you have to do is copy the <code>list</code> template:</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell>your-site/themes/papermod/layouts/_defaults/list.html
</code></pre></div><p>And paste it under your own <code>layouts</code> folder:</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell>your-site/layouts/_defaults/list.html
</code></pre></div><p>Then you&rsquo;re free to make any changes you want to the <code>list</code>.
When Hugo builds your site, your copy of <code>list.html</code> will be used instead of the theme&rsquo;s <code>list.html</code>.</p>
<hr>
<h2 id=enable-social-metadata-and-seo>Enable Social-Metadata and SEO<a hidden class=anchor aria-hidden=true href=#enable-social-metadata-and-seo>#</a></h2>
<p>These include OpenGraph, Twitter Cards and Schema.</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yml data-lang=yml><span style=color:#f92672>params</span>:
<span style=color:#f92672>env</span>: <span style=color:#ae81ff>production</span>
</code></pre></div><p>or set <code>HUGO_ENV</code> as &ldquo;production&rdquo; in system env-vars</p>
<hr>
<h2 id=failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource-->Failed to find a valid digest in the &lsquo;integrity&rsquo; attribute for resource &mldr; ?<a hidden class=anchor aria-hidden=true href=#failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource-->#</a></h2>
<p>Read about How Subresource Integrity helps: <a href=https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity>Subresource_Integrity</a></p>
<p>Why was the <code>asset</code> not loading ? : <a href=https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity#How_browsers_handle_Subresource_Integrity>How_browsers_handle_Subresource_Integrity</a></p>
<p><strong>Solution:</strong></p>
<p>Set the following in <code>config.yml</code></p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yml data-lang=yml><span style=color:#f92672>params</span>:
<span style=color:#f92672>assets</span>:
<span style=color:#f92672>disableFingerprinting</span>: <span style=color:#66d9ef>true</span>
</code></pre></div><p>Linked Issues:</p>
<ul>
<li><a href=https://stackoverflow.com/questions/65056585/hugo-theme-not-loading>https://stackoverflow.com/questions/65056585/hugo-theme-not-loading</a></li>
<li><a href=https://stackoverflow.com/questions/65040931/hugo-failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource>https://stackoverflow.com/questions/65040931/hugo-failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource</a></li>
<li><a href=https://blog.gerardbeckerleg.com/posts/hugo-failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource/>https://blog.gerardbeckerleg.com/posts/hugo-failed-to-find-a-valid-digest-in-the-integrity-attribute-for-resource/</a></li>
</ul>
<hr>
<h2 id=bundling-custom-css-with-themes-assets>Bundling Custom css with theme&rsquo;s assets<a hidden class=anchor aria-hidden=true href=#bundling-custom-css-with-themes-assets>#</a></h2>
<ul>
<li>For adding custom css to be bundled inside one minimized css</li>
</ul>
<p>Create folder in yout project directory as</p>
<pre tabindex=0><code>.(site root)
├── config.yml
├── content/
├── theme/hugo-PaperMod/
└── assets/
└── css/
└── extended/ &lt;---
├── custom_css1.css &lt;---
└── any_name.css &lt;---
</code></pre><p>All <code>css</code> files inside <code>assets/css/extended</code> will be bundled !</p>
<p><strong>Note</strong>: blank.css is just the placeholder so that it doesn&rsquo;t break the theme when no files are present under <code>assets/css/extended</code></p>
<p>Linked Issues:</p>
<ul>
<li><a href=https://discourse.gohugo.io/t/papermod-theme-how-to-add-custom-css/30165>Papermod Theme: How to add custom CSS?</a></li>
</ul>
<hr>
<h2 id=custom-head--footer>Custom Head / Footer<a hidden class=anchor aria-hidden=true href=#custom-head--footer>#</a></h2>
<p>Custom css/js can be added by way mentioned below.</p>
<pre tabindex=0><code>.(site root)
├── config.yml
├── content/
├── theme/hugo-PaperMod/
└── layouts
├── partials
│ ├── comments.html
│ ├── extend_footer.html &lt;---
│ └── extend_head.html &lt;---
└── robots.txt
</code></pre><p>Create a html page in directory structure as shown above.</p>
<p>Contents of <code>extend_head.html</code> will be added to <code>head</code> of page.</p>
<p>and contents of <code>extend_footer.html</code> will be added to bottom of page.</p>
<hr>
<h2 id=add-menu-to-site>Add menu to site<a hidden class=anchor aria-hidden=true href=#add-menu-to-site>#</a></h2>
<p>You can add menu entries which will appear in the header of every page.</p>
<p>To do so, add a <code>menu</code> section to your site&rsquo;s <code>config.yml</code>:</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yml data-lang=yml><span style=color:#f92672>menu</span>:
<span style=color:#f92672>main</span>:
- <span style=color:#f92672>identifier</span>: <span style=color:#ae81ff>categories</span>
<span style=color:#f92672>name</span>: <span style=color:#ae81ff>categories</span>
<span style=color:#f92672>url</span>: <span style=color:#ae81ff>/categories/</span>
<span style=color:#f92672>weight</span>: <span style=color:#ae81ff>10</span>
- <span style=color:#f92672>identifier</span>: <span style=color:#ae81ff>tags</span>
<span style=color:#f92672>name</span>: <span style=color:#ae81ff>tags</span>
<span style=color:#f92672>url</span>: <span style=color:#ae81ff>/tags/</span>
<span style=color:#f92672>weight</span>: <span style=color:#ae81ff>20</span>
- <span style=color:#f92672>identifier</span>: <span style=color:#ae81ff>example</span>
<span style=color:#f92672>name</span>: <span style=color:#ae81ff>example.org</span>
<span style=color:#f92672>url</span>: <span style=color:#ae81ff>https://example.org</span>
<span style=color:#f92672>weight</span>: <span style=color:#ae81ff>30</span>
</code></pre></div><p><code>name</code> controls what will be displayed for the menu entry.
<code>url</code> sets the URL that the entry points to.
<code>weight</code> is used to control the positioning of entries.</p>
<p>For more information on menus, see the <a href=https://gohugo.io/content-management/menus/>Hugo wiki page</a>.</p>
<hr>
<h2 id=pin-a-post>Pin a Post<a hidden class=anchor aria-hidden=true href=#pin-a-post>#</a></h2>
<p>Post can be pinned/ displayed top on the list by adding a <code>weight=&lt;num></code> var to page-variables</p>
<p>example:</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yml data-lang=yml>---
<span style=color:#f92672>title</span>: <span style=color:#e6db74>&#34;My Important post&#34;</span>
<span style=color:#f92672>date</span>: <span style=color:#e6db74>2020-09-15T11:30:03</span><span style=color:#ae81ff>+00</span>:<span style=color:#ae81ff>00</span>
<span style=color:#f92672>weight</span>: <span style=color:#ae81ff>1</span>
---
</code></pre></div><div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yml data-lang=yml>---
<span style=color:#f92672>title</span>: <span style=color:#e6db74>&#34;My 2nd Important post&#34;</span>
<span style=color:#f92672>date</span>: <span style=color:#e6db74>2020-09-15T11:30:03</span><span style=color:#ae81ff>+00</span>:<span style=color:#ae81ff>00</span>
<span style=color:#f92672>weight</span>: <span style=color:#ae81ff>2</span>
---
</code></pre></div><hr>
<h2 id=adding-custom-favicons>Adding Custom Favicon(s)<a hidden class=anchor aria-hidden=true href=#adding-custom-favicons>#</a></h2>
<p>We support the following paths under <code>/static</code> directory
and can be added accordingly.</p>
<ul>
<li><code>favicon.ico</code></li>
<li><code>favicon-16x16.png</code></li>
<li><code>favicon-32x32.png</code></li>
<li><code>apple-touch-icon.png</code></li>
<li><code>safari-pinned-tab.svg</code></li>
</ul>
<ol>
<li>
<p>Favicon(s) can be generated by <a href=https://favicon.io>Favicon.io</a></p>
<p>and can be simply put in <code>/static</code> folder.</p>
</li>
<li>
<p>Other way is to add favicon(s) NOT located in <code>/static</code> folder.</p>
<p>In site config add the following:</p>
<pre tabindex=0><code>params:
assets:
favicon: &quot;&lt;link / absolute url&gt;&quot;
favicon16x16: &quot;&lt;link / absolute url&gt;&quot;
favicon32x32: &quot;&lt;link / absolute url&gt;&quot;
apple_touch_icon: &quot;&lt;link / absolute url&gt;&quot;
safari_pinned_tab: &quot;&lt;link / absolute url&gt;&quot;
</code></pre><ul>
<li><code>absolute url</code> means direct links to external resource: ex. <a href=https://web.site/someimage.png>https://web.site/someimage.png</a></li>
</ul>
<p>example:</p>
<pre tabindex=0><code>params:
assets:
favicon: &quot;/favicon.ico&quot;
favicon16x16: &quot;/favicon-16x16.png&quot;
favicon32x32: &quot;/favicon-32x32.png&quot;
apple_touch_icon: &quot;/apple-touch-icon.png&quot;
safari_pinned_tab: &quot;/safari-pinned-tab.svg&quot;
</code></pre></li>
</ol>
<hr>
<h2 id=centering-image-in-markdown>Centering image in markdown<a hidden class=anchor aria-hidden=true href=#centering-image-in-markdown>#</a></h2>
<p>Add <code>#center</code> after image to center align an image</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-md data-lang=md>![<span style=color:#f92672>name</span>](<span style=color:#a6e22e>path/to/image.png#center</span>)
</code></pre></div><p><strong>When using <a href=https://gohugo.io/content-management/shortcodes/><code>figure</code></a> shortcode</strong></p>
<p>use <code>align=center</code> to center image with captions</p>
<p>ex.</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-md data-lang=md>{{&lt; <span style=color:#f92672>figure</span> <span style=color:#a6e22e>align</span><span style=color:#f92672>=</span><span style=color:#e6db74>center</span> <span style=color:#a6e22e>src</span><span style=color:#f92672>=</span><span style=color:#e6db74>&#34;image.jpg&#34;</span> &gt;}}
</code></pre></div><hr>
<h2 id=using-hugos-syntax-highlighter-chroma>Using Hugo&rsquo;s Syntax highlighter &ldquo;chroma&rdquo;<a hidden class=anchor aria-hidden=true href=#using-hugos-syntax-highlighter-chroma>#</a></h2>
<ol>
<li>
<p>Disable Highlight.js in site <code>config.yml</code></p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yml data-lang=yml><span style=color:#f92672>params</span>:
<span style=color:#f92672>assets</span>:
<span style=color:#f92672>disableHLJS</span>: <span style=color:#66d9ef>true</span>
</code></pre></div></li>
<li>
<p>Set hugo&rsquo;s markdown styling in site <code>config.yml</code></p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yml data-lang=yml><span style=color:#f92672>markup</span>:
<span style=color:#f92672>highlight</span>:
<span style=color:#75715e># anchorLineNos: true</span>
<span style=color:#f92672>codeFences</span>: <span style=color:#66d9ef>true</span>
<span style=color:#f92672>guessSyntax</span>: <span style=color:#66d9ef>true</span>
<span style=color:#f92672>lineNos</span>: <span style=color:#66d9ef>true</span>
<span style=color:#75715e># noClasses: false</span>
<span style=color:#f92672>style</span>: <span style=color:#ae81ff>monokai</span>
</code></pre></div></li>
<li>
<p>If you want <code>lineNos: true</code>, the background won&rsquo;t be proper.
This will only work with <code>noClasses: false</code> or <code>pygmentsUseClasses: true</code>.
Read <a href=https://gohugo.io/content-management/syntax-highlighting/#generate-syntax-highlighter-css>Generate Syntax Highlighter CSS</a></p>
<p>Add the following to <code>assets/css/extended/custom.css</code></p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-css data-lang=css>.<span style=color:#a6e22e>chroma</span> {
<span style=color:#66d9ef>background-color</span>: <span style=color:#66d9ef>unset</span>;
}
</code></pre></div><p>More Info : <a href=https://gohugo.io/getting-started/configuration-markup#highlight>Configure Markup - Highlight</a></p>
</li>
</ol>
<hr>
<h2 id=search-not-working->Search not working ?<a hidden class=anchor aria-hidden=true href=#search-not-working->#</a></h2>
<p>If you are using a CDN to server assets from a different domain, search would break</p>
<p>Why? Take a look at <a href=https://github.com/adityatelange/hugo-PaperMod/blob/fb4988cfb6d0d6e4e489f17d89f0fa618def3396/assets/js/fastsearch.js#L35>fastsearch.js#L35</a>.</p>
<p>We fetch the <code>index.json</code> (where the search function looks for the keywords typed) one level up of the website <code>search.min.js</code> is hosted on.</p>
<p>We have used this insted of assigning <code>baseURL</code> so as to work with multilingual websites ex. <code>example.com/fr/</code> and websites being placed under a subdirectory ex. <code>example.com/blog/</code>.</p>
<p>To fix for <em>single</em> language websites hosting assets from CDN, this you may <a href=#override-theme-template>override</a> <a href=https://github.com/adityatelange/hugo-PaperMod/blob/fb4988cfb6d0d6e4e489f17d89f0fa618def3396/assets/js/fastsearch.js#L35>fastsearch.js#L35</a> and placing appropriate URL as in</p>
<div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-js data-lang=js><span style=color:#a6e22e>xhr</span>.<span style=color:#a6e22e>open</span>(<span style=color:#e6db74>&#34;GET&#34;</span>, <span style=color:#e6db74>&#34;https://example.com/index.json&#34;</span>);
</code></pre></div><hr>
<h2 id=references>References<a hidden class=anchor aria-hidden=true href=#references>#</a></h2>
<ul>
<li><a href=https://zwbetz.com/override-a-hugo-theme/>Override a Hugo theme</a></li>
</ul>
</div>
<footer class=post-footer>
<ul class=post-tags>
<li><a href=/tags/papermod/>PaperMod</a></li>
</ul>
<nav class=paginav>
<a class=prev href=/posts/papermod/papermod-features/>
<span class=title>« Prev</span>
<br>
<span>Features</span>
</a>
<a class=next href=/posts/papermod/papermod-icons/>
<span class=title>Next »</span>
<br>
<span>Icons</span>
</a>
</nav>
</footer>
</article>
</main>
<footer class=footer>
<span>&copy; 2022 <a href=/>HackLiberty Blog</a></span>
<span>
Powered by
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
<a href=https://git.io/hugopapermod rel=noopener target=_blank>PaperMod</a>
</span>
</footer>
<a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentcolor"><path d="M12 6H0l6-6z"/></svg>
</a>
<script>let menu=document.getElementById('menu');menu&&(menu.scrollLeft=localStorage.getItem("menu-scroll-position"),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}),document.querySelectorAll('a[href^="#"]').forEach(a=>{a.addEventListener("click",function(b){b.preventDefault();var a=this.getAttribute("href").substr(1);window.matchMedia('(prefers-reduced-motion: reduce)').matches?document.querySelector(`[id='${decodeURIComponent(a)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(a)}']`).scrollIntoView({behavior:"smooth"}),a==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${a}`)})})</script>
<script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script>
<script>document.getElementById("theme-toggle").addEventListener("click",()=>{document.body.className.includes("dark")?(document.body.classList.remove('dark'),localStorage.setItem("pref-theme",'light')):(document.body.classList.add('dark'),localStorage.setItem("pref-theme",'dark'))})</script>
<script>document.querySelectorAll('pre > code').forEach(b=>{const c=b.parentNode.parentNode,a=document.createElement('button');a.classList.add('copy-code'),a.innerHTML='copy';function d(){a.innerHTML='copied!',setTimeout(()=>{a.innerHTML='copy'},2e3)}a.addEventListener('click',e=>{if('clipboard'in navigator){navigator.clipboard.writeText(b.textContent),d();return}const a=document.createRange();a.selectNodeContents(b);const c=window.getSelection();c.removeAllRanges(),c.addRange(a);try{document.execCommand('copy'),d()}catch(a){}c.removeRange(a)}),c.classList.contains("highlight")?c.appendChild(a):c.parentNode.firstChild==c||(b.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName=="TABLE"?b.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(a):b.parentNode.appendChild(a))})</script>
</body>
</html>