Ubuntuには様々なタスク管理ツールが存在します。代表的なものは第78回で紹介したTasqueですが,これ以外にも第171回のTomboyなどを用いてタスクを管理することができますし,Webサービスを直接利用することを含めれば,無数の選択肢があります。今回はその中でもひと味ちがったタスク管理ツール,ターミナル上で動作する『Taskwarrior』を紹介します。
Taskwarriorの導入
Taskwarriorは,ターミナル上で動作するToDo/タスク/プロジェクト管理ツールです。単純なToDoアイテム管理ツールに留まらず,バーンダウンチャートなどの各種チャートの生成機能・レポートツールなどを備えています。ただし,2011年7月現在,UI部分は英語のままなので,英語に苦手意識があると,慣れるまでは少々厳しいかもしれません(注1)。とはいえ,日本語のタスク名称等は登録できるので,平易な英語さえ読めれば問題なく利用できることも事実です。
まずはインストールしてみましょう。Taskwarriorは,Ubuntu 10.10以降の環境であれば,「task」というパッケージ名でuniverseリポジトリに収録されています(注2)。以下のコマンドでインストールできます。……Taskwarriorはターミナル上で機能するアプリケーションですので,当然ながら以下の操作はすべてターミナルから行います。
リポジトリから導入する場合
$ sudo apt-get install task
より古いUbuntu環境で利用したい,もしくはリポジトリに収録されていない最新版のTaskwarriorを利用したい場合,taskwarrior.orgにあるバイナリパッケージか,PPAを利用してインストールできます。直接バイナリパッケージを利用するよりは,たいていは(PPAにあるものの方が古いのでなければ)PPAから導入した方がよいでしょう。
バイナリパッケージを利用する場合
$ wget http://www.taskwarrior.org/download/task_1.9.4-0ubuntu1~lucid2_i386.deb $ sudo dpkg -i task_1.9.4-0ubuntu1~lucid2_i386.deb
PPAから導入する場合
$ sudo add-apt-repository ppa:ultrafredde/ppa $ sudo apt-get update $ sudo apt-get install task
インストールが完了したら,実際に利用してみましょう。Taskwarriorを呼び出すには,「task」というコマンドを用います。テストとして「Taskwarriorに慣れる」というタスクを登録してみます。タスクの新規登録には,「task」にサブコマンドとして「add」を与えた,「task add」を用います。
$ task add "Taskwarriorに慣れる"
しかしながら,現在のバージョンではパッケージに日本語リソースが含まれていないので,登録しようとすると「Could not read string file '~/.task/strings.ja-JP'」といったメッセージに遭遇するはずです。
以下を実行してリソースファイルを追加してください。
$ cd ~/.task $ wget http://people.ubuntu.com/~hito/task/strings.ja-JP http://people.ubuntu.com/~hito/task/tips.ja-JP
もう一度「task add」を実行し,さらに「task list」としてタスクの一覧を表示してみましょう。
$ task add "Taskwarriorに慣れる" $ task list
今度はうまく機能し,図1のように一覧されるはずです。
続けて,さらにタスクを登録してみましょう。
$ task add "Taskwarriorにタスクを登録する" $ task add "Taskwarriorでタスク管理"
この状態で一覧します。図2のように,これまで登録したタスクに「ID」というナンバリングがされた状態で並んで表示されるはずです。
タスクを「終了」させてみましょう。タスクの終了は,「ID」を指定する形で,「task %ID% done」(例:task 1 done)というコマンドで指定します。ここではID=1のタスクを終了させてみます。
$ task 1 done
この状態で「task list」を実行すると,以下のようにタスクが「繰り上がって」表示されるはずです(注3)。これで,旧ID1の「Taskwarriorに慣れる」というタスクが完了した状態になりました。
また,もしもタスクを「誤って」閉じてしまった場合,「task undo」というコマンドを用いることで,直前の操作を取り消すことができます。覚えておくと便利でしょう。
$ task list
ID Project Pri Due Active Age Description
1 1 min Taskwarriorにタスクを登録する
2 1 min Taskwarriorでタスク管理
2 tasks
Taskwarriorのごく基本的な使い方は,これだけです。とにかく「task add」でタスクを登録していき,完了したら「task %ID% done」で閉じていく,という流れで利用します。ターミナル上で簡単に操作できるため,日常的な作業の一部をターミナルやEmacs・vimなどのエディタ上で利用している人にとっては便利なはずです。
- 注1
- 現在のVersion 1.9.x系ではUIの翻訳には対応しておらず,英語のまま利用する必要があります。日本語リソースの翻訳(本文に出てくるstrings.ja-JPほか)のコミットついでに問い合わせたところ,将来的にUI周りのフレームワークを再設計した後で翻訳に対応する予定,という回答を得ています。
- 注2
- 収録リポジトリそのものはuniverseなのですが,Bryce Harrington(UbuntuのXまわりの担当者)がTaskwarriorのヘビーユーザーなので,各種バグフィックス対応は能動的に行われています。しかも,Ubuntu開発者の中でもトップクラスに忙しいBryceの手元で十分にテストされているわけですから,相当な数のタスクを登録しても,ソフトウェア的にも実用性の面でも問題ないであろう,ということが言えます。
- 注3
- これがTaskwarriorが一般的なチケットシステムやバグトラッキングシステムとは異なるところです。Taskwarriorにおける「ID」は,あくまで操作UI上のナンバリングでしかなく,永続的なナンバではありません。

