Published on

Obsidianのデイリーノートのフォルダを見直した

Authors

2025年も引き続きノートアプリに Obsidian を使っていきます。

今はデイリーとマンスリーの2種類のノートを作っているのですが、新年のタイミングでフォルダ構成を見直しました。

これまでのフォルダ構成

Daily
│   ├ YYYY-MM-DD
│   └ YYYY-MM-DD
Monthly
YYYY-MM
YYYY-MM

微妙だったところ

  • ノートの種類を増やそうと思ったときに、ルートに種類毎のフォルダが増えてしまう
  • デイリーノートに階層を設けていなかったので365ページがフラットに並んでしまう

これからのフォルダ構成

Journal
YYYY
MM
        │   ├ YYYY-MM-DD
        │   └ YYYY-MM-DD
YYYY-MM
YYYY-MM

変更した内容

  • 親フォルダとして Journal を設けた
  • 年・月のフォルダ階層を設けてデイリーノートを配置した ※フォルダ内は最大30ファイル程度
  • 年フォルダにマンスリーノートを配置した

設定内容

デイリーノートにはPeriodic Notesプラグインを使っているので、コアプラグインと合わせて設定内容を載せておきます。

書式指定でファイル名しか使えないと勝手に思っていましたが、パスで指定することができました。

コアプラグイン > デイリーノート

  • 日付の書式: YYYY/MM/YYYY-MM-DD
  • 新規ファイルの場所: Journal

コミュニティプラグイン > Periodic Notes

  • Daily Notes
    • Format: YYYY/MM/YYYY-MM-DD
    • Note Folder: Journal
  • Monthly Notes
    • Format: YYYY/YYYY-MM
    • Note Folder: Journal

Dataview のデータ取得方法の変更

デイリーノートとマンスリーノートの親フォルダが同じになったので、ノート一覧の取得方法も変更しました。

  • 今月のデイリーノートは、これまで通り日付指定で取得
  • 今年のマンスリーノートは、ファイル名がYYYY-MMのものを正規表現で取得するように変更

今月のデイリーノートを取得する (Dataview)

LIST FROM "Journal"
WHERE file.day >= date("2025-01-01")
AND file.day <= date("2025-01-31")
SORT file.day DESC

マンスリーノート一覧を取得する (Dataview)

LIST FROM "Journal"
WHERE regexmatch("^\\d{4}-\\d{2}$", file.name) = true
SORT file.path DESC

マンスリーノート一覧を取得する (Dataviewjs)

const pages = dv.pages('"Journal"').where(p => p.file.name.match(new RegExp(`^\\d{4}-\\d{2}$`))).sort(p => p.file.name)

フォルダ構成がだいぶスッキリできました。 次は各テンプレートの見直しと、イヤリーノート作成にもチャレンジしていこうと思います。