todo.sh というターミナルベースのTODO管理ツールを知りました。
このツールでは、todo.txtというテキストファイルでTODOリストを管理します。シェルスクリプトで記述されていますが、Python版もあります。
$tools.h add 旅費精算
などと、TODOを登録。
$tools.h list
で、 スケジュールリスト表示
てなかんじです。検索や優先順位付けなどもできます。
CygwinやMac OS X、Linuxのターミナルで動作が確認されているとのこと、シェル版は私のCygwin環境では、syntax errorが出てうまく動作せず。Debianでは、ちゃんと動いてる感じです。
なぜテキストファイルとCUIという昔ながらのデザインにしたかというと、作者の人は、コマンドラインの操作が快適ということと、特定のデータ形式やどこかのサーバに依存したくないという理由からだそうです。プレーンテキストは、構造化されていないがゆえに自由だと。
@phoneなどのノーテーションで、TODOのコンテキスト情報を付与したり、複数のTODOをProjectのサブタスクとして管理するなど、高度な使い方も可能です。
GUI、DB、Web、通信などを削ぎ落としたアプリケーションのベースがむき出しになってて面白いと感じました。ちょっとしたシェルやバッチファイルで小物ツールを作っていた時代を思い出しました。