このサイトもObsidianで作っているが,自分用ノートの方のObsidianの設定を最近いくらか変更したので,それに関してメモしておく.

次の機能(またはplug-in)に関すること.

  • Tasks — vault内のチェックリストを拾い上げてリスト表示してくれるプラグイン.これを使ってObsidianでタスク管理できるというもの.
  • Periodic Notes — Daily, weekly, monthly などの定期ノートを作成するためのプラグイン.
  • Calendar — カレンダーの日付に Daily note を,週に weekly note を紐づけるプラグイン.
  • Templater — テンプレートノートを作成して,新しいノートを作成する際に自動入力してくれるプラグイン.

モチベーション

Tasksプラグインを導入すると,未来のある日(例えばとある週2024-W21の水曜日)のMTGのためのタスクを入力したいというときがある.しかし,以前までの自分のweekly note templateでは,そのweekly noteノートを作成した日の週の日付を入力するようになっていたので,Calendarでクリックされた任意の週に対応したweekly note templateを作りたかった.

設定

  1. Calendarプラグインで Show week number をONにする.
  2. Periodic Notesプラグインで Weekly Notes をONにして下図のように設定する.
  3. Templaterプラグインで weekly template ノートを次のように設定する.
    # <% tp.file.title %>
     
    up: [[Year <% moment(tp.file.title, "YYYY-[W]ww").format("YYYY") %>]]
    prev: [[<% moment(tp.file.title, "YYYY-[W]ww").add(-1,'w').format("YYYY-[W]ww") %>]]
    next: [[<% moment(tp.file.title, "YYYY-[W]ww").add(1,'w').format("YYYY-[W]ww") %>]]
     
    <% tp.web.daily_quote() %>
     
    ## ☑ Tasks
     
    ![[Tasks#should-be-already-done|Should be already done]]
    ![[Tasks#from-today|From today]]
     
    ---
    ## <% moment(tp.file.title, "YYYY-[W]ww").startOf("week").format("MM/DD") %>(月)
     
    ---
     
    ## <% moment(tp.file.title, "YYYY-[W]ww").startOf("week").add(1,'d').format("MM/DD") %>(火)
     
    ---
     
    ## <% moment(tp.file.title, "YYYY-[W]ww").startOf("week").add(2,'d').format("MM/DD") %>(水)
     
    ---
     
    ## <% moment(tp.file.title, "YYYY-[W]ww").startOf("week").add(3,'d').format("MM/DD") %>(木)
     
    ---
     
    ## <% moment(tp.file.title, "YYYY-[W]ww").startOf("week").add(4,'d').format("MM/DD") %>(金)
     
    ---
     
    ## <% moment(tp.file.title, "YYYY-[W]ww").startOf("week").add(5,'d').format("MM/DD") %>(土)
     
    ---
     
    ## <% moment(tp.file.title, "YYYY-[W]ww").startOf("week").add(6,'d').format("MM/DD") %>(日)
  4. Tasksノートを作成し,次のように書いておく.
    # Tasks
     
    ## Should be already done
     
    ```tasks
    not done
    due before today
    ```
     
    ## From today
     
    ```tasks
    not done
    (due after yesterday) OR (scheduled after yesterday)
    ```
     
    ## No due date
     
    ```tasks
    not done
    no due date
    ```

上記設定で,Calendarで未来の任意の週をクリックすると,2024-W21のようなノートが作成され,そのノートは weekly template をコピーして,中に書かれているコマンドを実行する.中のコマンドは,ファイル名(tp.file.titleつまり2024-W21)から年と週を取ってきて,その週の月から日までの日付を自動的に書いてくれる.

このノートの中には,タスクを集計しているTasksノートの一部を引用しているため,各weekly noteの先頭にはその時やるべきタスクがリスト表示される.

タスクはそれ専用の別の何かで管理した方がいい,という意見もありそうだが,このやり方だと,なんらかの仕事(のタスク)に関するノートのどこかにチェックボックスを作ってタスクを書いておけばweekly noteに表示されるので,お手軽だし見逃す可能性も低くなっていいと思っている(今のところは). こういうproductivity系のことはあきてきたら別の方法に乗り換えるというのがあるあるだけど...