koishiiko84 downloadsAssign type to your notes and quickly switch between them.

This plugin is heavily inspired by the latest update of Octarine (v0.42). Essentially, it just changes the Templater/QuickAdd template-filling workflow (Run command -> Choose template) into a dropdown-based switcher, but in my personal opinion, it greatly improves the user experience. Huge thanks to Octarine for the idea!
The plugin does not introduce new note syntax, just binds a configurable property key (default: noteType) to represent the note type. A dropdown is displayed in the Properties editor listing all predefined note types. When a type is selected, the corresponding template is formatted and applied, both properties (frontmatter) and body content are populated.
| Setting | Description |
|---|---|
| Property key | The frontmatter property key used to identify the note type (default: noteType). |
| Hide note type property | When enabled, the raw property input is hidden — only the styled dropdown is shown. |
Define your note types here. Each note type has the following options:
| Field | Description |
|---|---|
| Key | Unique identifier written to the configured property key. |
| Name | Display name shown in the dropdown. |
| Icon | Icon from Lucide displayed alongside the name. |
| Color | Color applied to the icon and name in the dropdown. |
| Template | Path to the template file used when this note type is selected. |
| Formatter | The engine used to process the template (see below). |
Uses {{ variable }} or {{ date:format }} syntax with variable. The following variables are available:
moment().format(). see: https://momentjs.com/docs{{ now }} // default: YYYY-MM-DD hh:mm:ss
{{ now:YYYY-MM-DD }}
{{ ctime }} // default: YYYY-MM-DD hh:mm:ss
{{ mtime:YYYY-MM-DD }}
{{ fullname }} // foo.md
{{ name }} // name
{{ ext }} // md
More complex templates can be implemented using the Templater plugin, see: Templater document
When a note already has content, you can control how templates are applied. If Show conflict modal is enabled, you will be prompted to choose the behavior each time a conflict occurs. Otherwise, the default settings are used.
| Option | Description |
|---|---|
| Replace | Replace all properties with the template's properties. |
| Keep | Keep existing properties, skip conflicting ones from the template. |
| Overwrite | Keep existing properties, but overwrite those that conflict with the template. |
| Option | Description |
|---|---|
| Replace | Replace with the template's content. |
| Keep | Preserve the existing note content (do not replace). |
| Setting | Description |
|---|---|
| Enable default note type | When a file without a note type is opened, automatically assign the default note type and apply its template. |
| Default note type | The note type to use as the default. |
| Empty note only | Only apply the note type to empty files. |