silverbullet/website/Slash Templates.md

44 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

Slash templates allow you to define custom [[Slash Commands]] that expand “snippet style” templates inline.
# Definition
You can define a slash template by creating a [[Templates|template page]] with a template tag and `trigger` attribute. If youd like to (temporarily) disable the template, you can set the `enabled` attribute to `false`.
Example:
---
tags: template
trigger: meeting-notes
---
## Meeting notes for {{today}}!
|^|
## Frontmatter
A templates [[Frontmatter]] is interpreted by SilverBullets [[Templates|template]] engine and removed when instantiated. However, to still include frontmatter after instantiation, you can use the `frontmatter` attribute.
Example:
---
tags: template
trigger: meeting-notes
frontmatter: |
date: {{today}}
---
## Meeting notes for {{today}}!
|^|
Which will expand into e.g.
---
date: 2023-11-11
---
## Meeting notes for 2023-11-11
.
When the page already contains frontmatter before invoking the slash command, it will be augmented with the additional frontmatter specified by the template.
# Use
You can _trigger_ the slash template by typing `/<trigger>` (e.g. `/meeting-notes`) in any page.