Ubuntu Weekly Recipe

第182回 Taskwarriorでターミナルからタスクを管理する(1)

この記事を読むのに必要な時間:およそ 3 分

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のように一覧されるはずです。

図1 ⁠task add」「task list」を実行した結果。通常のターミナルではなくbyobu上で実行しているため,フッタ部分に各種パフォーマンス情報が表示される

図1 「task add」と「task list」を実行した結果。通常のターミナルではなくbyobu上で実行しているため,フッタ部分に各種パフォーマンス情報が表示される

続けて,さらにタスクを登録してみましょう。

$ task add "Taskwarriorにタスクを登録する"
$ task add "Taskwarriorでタスク管理"

この状態で一覧します。図2のように,これまで登録したタスクに「ID」というナンバリングがされた状態で並んで表示されるはずです。

図2 登録したタスクが画面に表示された

図2 登録したタスクが画面に表示された

タスクを「終了」させてみましょう。タスクの終了は,⁠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上のナンバリングでしかなく,永続的なナンバではありません。

著者プロフィール

吉田史(よしだふみひと)

Ubuntu Japanese Team Member株式会社創夢所属。システム管理を中心にWindows/PC Unixを併用している。Ubuntu Japanese Teamではパッケージサーバの管理や翻訳などの作業を担当。

コメント

コメントの記入