Can I gather the names of all my Daily Notes as internal links and put them into my MOC like a table of contents?

Hello smart people of Obsidian!

What I’m trying to do

I am using the Daily Note plugin to make journal entries, and am trying to find an easy way to put them all in my journaling Map of Content as links without having to manually type them in one by one.

Context: All of my daily notes are in the same folder, follow a template which backlinks to my Journaling MOC. Therefore they come up in the backlinks panel. However I want to gather them as a list and put them in numeric order and format them as links. (Each note is labeled in date order by Year-Month-Day as numbers)

It might look like this

Journal Entries
[[2021-08-02]]
[[2021-08-03]]
[[2022-09-06]]

Things I have tried

I have searched for “table of contents” and the #backlinks tag and “help” category but I’m not sure if I’m looking in the right place.

I tried googling “table of contents HTML” but I get results about links to headings within a document, not from one note to other notes.

I know a very little bit of HTML and wouldn’t mind using simple code for this. I feel like there has to be an obvious answer I’m not seeing.

You could preemptively create the links for daily notes that have yet to be created. In terms of creating the links to the existing daily notes, you can select them and drag and drop into a note to drop links. Or you might consider one of the calendar plugins.

You might want to look into using either an Obsidian query block or using the Dataview plugin. However, these options do not show up in the graph view or the Backlinks or Outgoing links panes.

There are other plugins that will automatically generate the links of notes in a folder like Waypoint.

I hope this helps some. Good luck!

1 Like

Have you looked at the Dataview plugin? It can a lot of amazing things, but this one is pretty easy (I think).

This will get you all files that have the YYYY-MM-DD in their title. This isn’t exactly what you want, as it will match ANY file with a date in the title, but it may give you a start.

LIST file.day WHERE file.day

From the examples page in the Dataview documentation

2 Likes

the search result can be saved as a list of links.

So there is actually no need for any plugins to fulfil your requirement.

in the search pane, search for

file:/[0-9]{4}-[0-9]{2}-[0-9]{2}/

and sort the result based on A-Z increasing order, and then click the copy button. you will get the window where you can configure the format of the search result, for example as a list of links as you need, and copy it to any where.

1 Like

@GLight Do you know if it is possible to get an automatically updating result with this, maybe using an embedded query? One of the nice things about the dataview solution is that it will update over time as more daily notes are added. Would love to know how to get the same from Search!

If all your daily notes are in the same folder (“Daily Notes” in this example) you can do it with an embedded query like this:

```query
path:"Daily Notes"
```

The answer depends on what kind of workflow you are expecting.

If what you want is clickable items which links to the daily notes, and the item is not in a formation of “[[xxxx-xx-xx]]”, the answer is yes, but not with search. As you already guessed, also as what is mentioned in the post 6, it is achieved by using query, with the same search condition. The result is dynamically generated. And if you want the content to be more readable, you can try the Obsidian-query-control plugin.

A brief introduction of Obsidian-query-control plugin can be found at:

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.