What I’m trying to do
Ultimately what I’m trying to do is get a table of links to all my notes in a Longform project, ordered as they are in the Longform plugin.
To do so, I’m attempting to use Dataview to query the (nested) frontmatter of the project’s Index file (where Longform keeps the scene order) and transform the results into links.
NOTE: I realize I could avoid this all by simply adding numbers to the start of all the file names, then use a Dataview query on that folder, sorting by number… But I like the freedom of not having to relabel everything if I reorder them or add a new one in the middle. Plus it’s an excuse to learn more about Dataview and Obsidian!
Things I have tried
I think I’m pretty close, as I can get it to work on test files using the following query:
```dataview
TABLE map(longform.scenes, (t) => "[[" + t + "]]") as Scenes
FROM "1 Drafts/My Story/Index"
```
However, when trying to target the Index file for my Longform project (like follows), it returns a blank result in the table.
---
longform:
format: scenes
title: My Story
workflow: Default Workflow
sceneFolder: /
scenes:
- First Scene
- Next Scene
- And another scene
ignoredFiles: []
---
```dataview
TABLE map(longform.scenes, (t) => "[[" + t + "]]") as Scenes
FROM "1 Drafts/My Story/Index"
Though if I remove certain other key-value pairs in the frontmatter, it works. Namely, anything containing the word “scene” (so: “format: scenes
” and “sceneFolder: /
”).
But because those are necessary for the function of the plugin, I can’t just remove them. So I guess my question is:
Is there a way to be more specific in my query to ignore the other frontmatter (or another way I haven’t thought of) so I can get my desired result?