Skip to main content
  1. Notes/

Hugo Blowfish Syntax Cheat Sheet

Web Hugo Blowfish Syntax Notes
Table of Contents

Inner Cover Image
Syntax for Hugo with the Blowfish theme,
broken down into three categories:
HTML syntax: Used for templates and styles — the most universal option
Markdown syntax: Commonly used inside index.md pages — simple and convenient
Blowfish shortcodes: Go-based syntax organized by the Blowfish theme

Common Syntax
#

Comments
#

<!-- -->

Line Break
#

<br>

Code Block
#

Wrap content between 👉`👈 on each side

    ```go
    ```markdown
    ```html

Inserting Images
#

In Hugo, pay attention to the rules for relative paths when using Page Bundle images.
Your folder must contain an index.md file (・ω・、)
If you only have index.zh-tw.md, the Page Bundle won’t be recognized and your images will break (つд`゚)・゚・

content/article-folder/
            ├─ index.md   # Must exist — can be an empty file
            ├─ index.zh-tw.md
            └─ images/Export_UV_Layout.png

Your article folder must contain all of the following at the same time:
index.md
index.zh-tw.md
the images folder

The Markdown syntax is ![Alt text](relative/path/to/image)

![Export UV Layout](images/Export_UV_Layout.png)

The Markdown syntax forces full-width display with rounded corners.
If your image is narrower than 602px, using Markdown syntax will result in a blurry image.

The default=true parameter in the figure shortcode removes the forced full-width and rounded corners, displaying the image at its original size with square corners.
However, the figure shortcode cannot be placed inside a code block — it will always be rendered as an actual image. So it’s split across:
{{ and < figure...> and }} with no spaces between them

The syntax inside {{ }} looks like this:

< figure src="images/ExampleImage.png" alt="Example Image" >
< figure 
  src="images/ExampleImage.png"
  alt="Example Image"
  default=true
>

In-page Anchor Links
#

Manually assign a target ID: {#3d}
Link syntax: [Link Text](#3d)

Sometimes the theme or browser has issues with non-Latin IDs, so it’s best to manually assign an ID to your headings:

## 3D Notes {#3d}
## Site-building Notes {#site}

Once the IDs are fixed, link to them using:

[3D](#3d) | [Site-building](#site)

Links
#

[Display Text](https://sample/go/) — opens in a new tab by default


HTML Syntax
#

Comments
#

<!-- -->

Code Block
#

Wrap content between 👉`👈 on each side

Line Break
#

<br>


Markdown Syntax
#

Official Documentation
#

Blowfish Markdown Samples | GitHub Sample Post

Links
#

[Display Text](https://sample/go/) — opens in a new tab by default

Blowfish Shortcodes
#

Official Documentation
#

Hugo Shortcodes | Blowfish Shortcodes

Internal Page Links
#

[Display Text]({{ }}) — navigates within the same window
Inside ({{ }}) goes < ref "/target-path" > — this always triggers even inside a code block, so there’s no way to escape it!
‼️ If the target cannot be found, your entire site will fail to build — use with caution! ‼️