Featured image of post Org modeでタスク管理 その1:「Todo.txt」

Org modeでタスク管理 その1:「Todo.txt」

みなさんはどのように日々のタスク管理をされていますか?

私はEmacsユーザーということもあって、Org modeを使っています。

Org-mode. Complex so you don't have to be. A versatile organisational system with immense capabilities.
Org Mode

Org modeはEmacsにビルトインされているメジャーモードのひとつで、ドキュメント作成や、ノート、タスク管理などの機能をプレーンテキストの編集システムとして提供してくれます。

プレーンテキストの良さ

プレーンテキストで情報を扱うことには、以下のようなメリットがあると考えています。

  • 特定のサービスにロックインされないため、サービス内容の変更や急な終了などのリスクがない
  • データ形式がプリミティブであるため、他のソフトウェアとの依存が低く、保存と編集の自由度が高い

結局は、テキストファイルとテキストエディタが一番自由度が高くて、取り回しがいい、というわけです。

このブログをはてなブログからHugoに移したのも、このプレーンテキストのメリットを活かすためだったりします。

プレーンテキストでタスクを管理する「Todo.txt」

Todo.txtというタスク管理法をご存知でしょうか?

Google検索によると、米LifehackのGina Trapani氏が、片手間のプロジェクトとしてスタートさせたものが起源のタスク管理方法らしいです。 todo.txt formatにその方法の詳細がまとまっています。

WORK FAST, LIVE SLOW.仕事を充実させ、生活を楽しむ。ビジネスはスマートに、暮らしは豊かに。ポジティブに生きるために現実を見据えて考えたい人のための自分グロースメディア。
どのツールもしっくりこない人へ、『Todo.txt』によるタスクマネジメントのススメ | ライフハッカー・ジャパン

上記の紹介記事は2011年のものなので、かなり歴史のある手法であることが伺えます。 当時からGTDを初め、TODO管理方法や、ツールを渡り歩いたりしていた私なのですが、このTodo.txtは実は初耳でした。

Lifehackerも当時は積極的に購読していたのですが、まったく気がつきませんでしたね^^;

さて、Todo.txtの最たる特徴はプレーンテキストでタスク管理を実現する点でしょう。 以下冒頭の「Why plain text?」に、こんなことが書かれています。

Plain text is software and operating system agnostic. It’s searchable, portable, lightweight, and easily manipulated. It’s unstructured. It works when someone else’s web server is down or your Outlook .PST file is corrupt. There’s no exporting and importing, no databases or tags or flags or stars or prioritizing or insert company name here-induced rules on what you can and can’t do with it.

Todo.txtはこのプレーンテキストの良さを活かしたタスク管理方法なのです。

Org mode × Todo.txt

EmacsとOrg modeはプレーンテキストでタスク管理を実現するための、多様な機能を提供してくれます。

しかしその自由度も非常に高いです。 Todo.txtはそんなOrg modeにタスク管理のひとつの方針を示してくれます。

Org modeが機能を、そしてTodo.txtが手法を提供してくれることで、シンプルで強力なタスク管理システムをプレーンテキストで運用することができます。

タスクと優先度

Org modeでは C-c C-t でヘッドラインにTODOを設定することができます。完了した場合には C-c C-t もしくは、 S-LEFT/RIGHT を繰り返すことでタスクの状態を変更し、DONEにすることができます。

1
2
* TODO あれをやる。
* DONE これをやる。

これだけでヘッドライン単位で、Todo.txtのタスク単位を表現することができます。

優先度も C-c , に続いてA、BもしくはCをタイプすることで、設定することができます。

1
2
3
* TODO [#A] あれをやる。
* TODO [#B] これをやる。
* TODO それをやる。

プロジェクト

プロジェクトはタグで表現できます。 C-c C-q とすることで任意のタグを追加できます。

1
* TODO [#A] あれをやる。  :@project

この後のコンテキストと分けるために、 @ のプレフィックスをつけておきます。このプレフィックスはなんでもよいと思います。

コンテキスト

コンテキストもタグで表現します。

1
* TODO [#A] あれをやる。  :@project:context

もし他にタグを運用しないのであれば、こちらはプレフィックスなし、としておけばプロジェクトと見分けがつくかと思います。

締切りとスケジュール

Todo.txtフォーマットでは、追加のフィールド設定も問題ありません。タスク管理で他によく使うものとしては、やはりスケジュールや締め切りではないでしょうか。

Org modeでは、 C-c C-s でスケジュールを、 C-c C-d で締切りを設定することができます。

1
2
3
* TODO [#A] あれをやる。  :@project:context
  SCHEDULED: <2022-10-31 Mon>
  DEADLINE: <2022-11-28 Mon>

1行に入る形式ではないですが、Calendarから直接選択して入力することができるので便利です。

また、次に紹介するorg-agendaを利用することで週単位でこれらの日付をカレンダー画面で確認することもできます。

org-agenda

Org modeにはorg-agendaという機能があります。以下はアジェンダビューの例です。

このように、org-agendaでは設定したTODOアイテムだけを抽出して専用の画面でチェックしたり、操作したりできます。

かなり色々な機能があるのですが、Todo.txtで便利に使える機能としては、以下のようなことが可能です。

  • ファイル内のTODOの書かれている順番によらず優先度順にすべてのTODOアイテムを表示できる
  • 設定したスケジュールや締切りを週カレンダーで表示することができる
  • TODO状態の操作や優先度の変更ができる
  • プロジェクトやコンテキスト、優先度などでフィルタができる

まとめ

Org modeはEmacsのキラーアプリと言われる程強力なメジャーモードです。この強力な機能とTodo.txtのシンプルなタスク管理方法を活かすことで、かなり快適なタスク管理システムを実現できると感じました。

ところで、Org modeには実はアウトライナーとしての側面もあります。アウトライナーとして利用することで、このタスク管理方法を更に発展させることができます。

その2では、アウトライナーの側面を活かしたOrg modeでのタスク管理を考えたいと思います。

Built with Hugo
テーマ StackJimmy によって設計されています。