hyogen-md

0.10.0

Expressions

Use {{ expression }} in Markdown body text to interpolate values. Statements are not allowed — only expressions.

Variable reference

Hello {{ name }}!

Member access and computed keys work like JavaScript:

{{ user.name }}
{{ items[index] }}

Default values (pipe)

Use | for fallback when the left side is falsy (undefined, null, "", 0, false):

{{ title | "Untitled" }}
{{ count | 0 }}

Ternary operator

{{ isNight ? "Dark" : "Light" }}

Triple braces

{{{ expression }}} is supported. Currently behaves the same as {{ }} (no escaping). Reserved for a future escaping mode.

Component calls

Registered components are called inside expressions:

{{ cityItem({ city: "Osaka", population: 2825000 }) }}

See Includes and components.

What you cannot write

  • Statements (const, if, loops)
  • Arbitrary function calls (only registered components)
  • Most method calls (only .toLocaleString)

Logic belongs in @hg blocks. See Hyogen blocks.

Escaping

{{ }} does not HTML-escape output. Sanitize downstream if you render to HTML. Suspicious context values may emit warnings — see Paths and security.