Jazzと読書の日々

iPadを筆記具として使う方法を模索します

Obsidianでデイリーノートの前日を開く

デイリーノートに「←前日:翌日→」のリンクを埋め込む例をよく見かけるけど、あれは手間だろうと思う。 アクションに置き換えることはできないかな。 ツールバーにボタンで置いておけば複雑なテンプレートを組まなくて済むし。

Yesterday.md

前日を開くTemplaterスクリプト

<%*
FOLDER = "journals/"
FORMAT = "YYYY-MM-DD"

s = tp.file.title
d = moment(s, FORMAT)
if( d.isValid() ){
   for(i=1; i<10; i++){
    f = FOLDER + d.subtract(i, 'day').format(FORMAT)  + ".md"
    p = app.vault.getAbstractFileByPath(f)
    if(p) app.workspace.activeLeaf.openFile(p)
  }
}else{
  f = FOLDER + tp.date.now(FORMAT)  + ".md"
  p = app.vault.getAbstractFileByPath(f)
  if(p) app.workspace.activeLeaf.openFile(p)
}
%>

前日があるとは限らないので10日間分を遡ります。 ファイルがあれば同じ画面でそれを開く。 なければ何もしない。

変数FOLDERにデイリーノートのフォルダを、FORMATに日付形式を設定してください。

Tomorrow.md

翌日を開くスクリプト

<%*
FOLDER = "journals/"
FORMAT = "YYYY-MM-DD"

s = tp.file.title
for(i=1; i<10; i++){
  f = FOLDER + moment(s, FORMAT).add(i, 'day').format(FORMAT)  + ".md"
  p = app.vault.getAbstractFileByPath(f)
  if(p) app.workspace.activeLeaf.openFile(p)
}
%>

moment()にadd()で足していくだけ。

実行例

Commanderでタブバーに置くのがいいですね。 デイリーノートを開いているとき実行すると、前後の日付のファイルを探して表示します。

Yesterdayの方は、デイリーノート以外で実行した場合、今日のデイリーノートを開くようにしました。 もし今日の分がなければ何もしないけど。

まとめ

Obsidian - Connected Notes 1.4.8
分類: 仕事効率化,辞書/辞典/その他
価格: 無料 (Dynalist Inc.)

実は最近、ファイルを開く系のアクションが重いんですよね。 プラグインを入れすぎてバッティングしているのかもしれません。

dataviewでタスクリストを拾おうとしても Loading... で止まっているし。

追記:やはり Open Gate がバッティングしていたようです。