Configuration

In the settings of the plugin, you can configure:

Device Settings

  • Disable on this device: When enabled, the plugin is fully disabled on the current device only. It performs no automatic or manual serialization, registers no file-event listeners, hides the per-query refresh buttons, and its commands do nothing (they show a brief notice instead). This is useful when you want the plugin active on your desktop but completely inactive on, for example, your phone or tablet.

    Unlike every other setting, this one is stored locally on the device and is never synced to your other devices (it is not written to the plugin’s data.json). Flip it on wherever you want the plugin to stay inert; your other devices are unaffected. The change takes effect immediately — no reload required.

General Settings

  • Disable automatic updates: When enabled, the plugin will not automatically serialize queries when files are created, modified, or renamed. You can still manually serialize queries using the command palette. This is useful if you prefer full control over when queries are updated.

  • Show refresh button: When enabled, a refresh button will be displayed next to each serialized Dataview query in the editor. Clicking this button will refresh only that specific query.

  • Show error notifications: When enabled, a notification popup will be displayed when a query fails to serialize. This helps you identify and fix invalid queries. Errors show the problematic query and the error message from Dataview.

  • Debug logging: When enabled, verbose debug messages will be logged to the browser console. This is useful for troubleshooting issues with the plugin. When disabled (default), only warnings and errors are logged, keeping the console clean.

  • Enable DataviewJS queries: When enabled (default), the plugin will process DataviewJS queries in addition to standard Dataview DQL queries. DataviewJS queries allow you to write JavaScript code using the Dataview API. When disabled, DataviewJS queries will be ignored during serialization.

Output Settings

  • Add trailing newline: When enabled, an empty line will be added between the serialized content and the END marker. This is useful for static site generators like Jekyll that require blank lines after tables or lists.

  • Link format: Controls how internal links are formatted in the serialized output. Options:

    • Use Obsidian setting: Respects your vault’s “New link format” preference (Settings → Files and links → New link format) and your “Use [[Wikilinks]]” preference. If Obsidian is set to “Relative path” or “Absolute path”, the plugin will preserve full paths. If “Use [[Wikilinks]]” is disabled (i.e., your vault uses standard Markdown links), serialized output will use [display](path) format instead of [[path|display]].
    • Shortest path when possible (default): Simplifies links when the filename is unique in the vault. For example, [[folder/note.md|note]] becomes [[note]] if there’s only one file named note.md. Always uses wikilink syntax.
    • Absolute path: Always uses the full path to the file, with wikilink syntax. This ensures consistency when syncing vaults across devices using Git or other tools, preventing commit noise from link format differences.

Folder Settings

  • Folders to scan: The folders that should be scanned when the “Scan and serialize all Dataview queries” command is executed.

  • Folders to ignore: The folders that should be excluded when processing files. Files in these folders will not have their queries serialized.

  • Folders to force update: Folders containing files that should be updated when ANY file in the vault changes. This is useful for index files or dashboards that contain queries aggregating data from elsewhere in your vault.

Understanding “Folders to force update”

By default, when you modify a file, only that file’s queries are re-serialized. However, if you have an “index” or “dashboard” file that contains queries like LIST FROM #project or TABLE file.name FROM "Daily Notes", those queries depend on other files in your vault.

By adding the folder containing your index files to “Folders to force update”, those files will be re-processed whenever any file in your vault changes. This ensures your index files stay up-to-date.

Example use case:

  • You have a file at Index/Projects.md containing <!-- QueryToSerialize: LIST FROM #project -->
  • Add Index to “Folders to force update”
  • Now whenever you add the #project tag to any note, your Projects.md index will automatically update

Note: The force update uses a 10-second debounce delay to avoid overwhelming the system with updates when many files change rapidly.

Date placeholders in “Folders to force update”

Paths in “Folders to force update” can contain date placeholders. They are resolved against the current date every time the force update runs, so a path like Daily// always points at the current month’s folder — no manual maintenance when the month rolls over.

This is mainly useful with Periodic Notes / Calendar style vaults: instead of force-updating an entire year of daily notes, you force-update only the notes that are still “current”.

Available placeholders (case-insensitive, shown for 2026-07-23):

Placeholder Resolves to Example
`` Year 2026
`` Quarter Q3
`` Month number 07
`` Short month name Jul
`` ISO week number (padded) 30
`` Full date 2026-07-23
`` Day of the month 23

Offsets — add +n or -n to shift the date by the placeholder’s own unit. Useful to keep the previous period in scope for a while:

Pattern Resolves to
`` Previous month → 06
`` Next ISO week → 31
`` Seven days ago → 2026-07-16
`` Previous year → 2025

Custom formats — add a colon followed by a date-fns format string to override the default rendering. Literal text must be single-quoted:

Pattern Resolves to
`` 07-Jul
`` July
`` June
`` 2026-CW30

Examples:

Configured path Effect
Daily//- Only the current month’s folder (Daily/2026/07-Jul)
Daily//- Only the previous month’s folder (add it alongside the one above for overlap)
Daily//-/ Only today’s daily note
Weekly/ Only the current week’s note

Notes:

  • Matching is a path prefix match, exactly as for static paths. Daily/2026/07 therefore also matches Daily/2026/07-Jul/….
  • Unknown placeholders (typos) and invalid date formats are left as-is, so nothing is force-updated instead of silently matching the wrong folder. The settings tab shows what each configured entry currently resolves to.
  • Placeholders are supported in “Folders to force update” only — “Folders to scan” and “Folders to ignore” take static paths.

Per-note ignore flag

Individual notes can opt out of serialization by setting the dataview_serializer_ignore property in their frontmatter:

---
dataview_serializer_ignore: true
---

When this property is truthy, the plugin skips the note entirely: no queries inside it will be serialized, even when running the “Scan and serialize” commands manually. See Ignoring a specific note for accepted values.