todo.txtをSpacemacsで管理する

MELPAから配布されている todotxtを導入することで、emacsに Todo.txtフォーマットの編集機能を追加できます。

Spacemacsの場合は.spacemacsに追加パッケージ名を指定して再起動するだけでインストールできます。

   dotspacemacs-additional-packages
   '(
     todotxt
     )

todoを記録するファイルは、todotxt-file変数で指定します。M-x todotxt(SPC SPC todotxt)で起動すると、このファイルを使います。

また、todotxt.elは編集モードで独自のコマンドを受けつける挙動であるため、todotxt-mode起動時の evil-stateemacshybridに設定しておいた方が使いやすいでしょう。

(defun dotspacemacs/user-config ()
  (setq todotxt-file "/path/to/todo.txt")
  (evil-set-initial-state 'todotxt-mode 'hybrid)
  )

todotxt-modeの使い方

タスクは各行で表し、aコマンドで追加します。タグ(t)や優先度(r)は登録済みの行に追加する2ステップ+αの編集方式になっています。
完了はcコマンドでトグルします。

完了タスクはAコマンドで、done.txtに自動で書き写されてtodo.txtから消えます。
その他のコマンドは?で確認でき、qでバッファをクローズします。

マイクロタスク管理に適している

todo.txtのフォーマットの特性上、一行に収まる簡潔なタスクを管理する用途に向いています。
タグや優先度によるフィルタやソートは可能ですが、階層的な依存関係のあるプロジェクト管理は直接サポートしていません。

emacsにはorgがありますが、emacs以外にorgを完備するアプリが少ない点がややネックです。
複数の異なる環境でマイクロタスクのみ管理したい場合に、todo.txtは便利なフォーマットと言えます。

MarkDownはToDo機能が貧弱であるため、todo.txtと組み合わせるとorgにやや近い用途をカバーします。
MarkDownとtodo.txtは、Androidの Markorがサポートしており、出先で確認する環境も作れます。

⁋ 2023/05/07↻ 2024/11/07
中馬崇尋
Chuma Takahiro