スケジュール管理をしよう!!

忘れちゃいけない大事な…

すいません、2号も休んでしまいました。 季節は既に冬真っ盛りで、盆地住いの身には辛いことこの上ありません。 自転車を使っての通勤のわずかな時間で体がすっかり冷えきってしまいます。

さて、家族サービスを行う上で、スケジュール管理は大切です。 遊園地に行く約束をしていたしていた日にゴルフを入れてしまうと、 冷たい視線が痛くはないでしょうか? 家族の誕生日や記念日は全て覚えているでしょうか? ただでさえ、家庭不和の原因となるコンピュータという趣味を持っている以上は、 このあたりの家族サービスはきっちり押えて点数稼ぎをしましょう。

というわけで、今回はスケジュール管理ソフトウエアについて 御紹介したいと思います。

スケジュールを管理する

古くから単にカレンダーを表示するコマンドとしては、 calがあります。 現在では、locale対応しているので、日本語で表示もしてくれます。 が、これだけではスケジュール管理はできません。 ちなみにdeskutils/gcalにも、 gcal(http://www.gnu.org/software/gcal/gcal.html) というカレンダー表示コマンドが存在します。

スケジュール管理ソフトウエアとして利用可能なものを表1に示します。 Palmとの連係に関しては、FreeBSD PRESS No.4の記事に詳しいので、 ここでは述べません。

表 1. 主なスケジュール管理ソフトウエア

名前portsの場所インターフェースPalmとの連係備考
gemcal [a] deskutils/gemcalGUImhc用のGUIフロントエンドインターフェース
xcalendarjapanese/xcalendarGUI× 
jpilotjapanese/jpilotGUI本来はPalmとのsync用。
icaljapanese/icalGUI[b]  
plan [c] japanese/planGUI 
gnomepimdeskutils/gnomepimGUI×スケジューラコマンドはgnomecal
Moneydance [d] deskutils/moneydanceGUI×本来はfinance関係のアプリケーション
注意:
a. http://www.quickhack.net/mhc/
b. palm/syncalが必要。
c. http://www.IN-Berlin.DE/User/bitrot/plan.html
d. http://www.moneydance.net/

[Case1]GUIで簡単操作

担当者の基本的路線として、家族で使うFreeBSDというのがありますので、 とりあえずは簡単操作のGUIからはじめましょう。 GUIソフトウエアはいろいろあります。 この中でもこれまでに本誌で紹介されていないいないものを中心に説明し、 あとは軽く説明します。

xcalendar

japanese/xcalendarは、 シンプルなスケジュール管理ソフトウエアです。 かなり古くからあるソフトウエアで、日本語化されたスケジューラとしては 最初の部類に属するものです。 基本的にXさえ入っていれば動作しますので、 最近のソフトウエアが重くなったとお嘆きのあなたには適当かと思います。

表示もコンパクト(図1)ですので、 ノートパソコンの狭い画面を有効に利用することが可能です。

図 1. xcalendarの画面

gemcal(MHCとの連係)

deskutils/gemcalは、 後述のMHCとの連係を主としたソフトウエアです。 デフォルトの表示はコンパクトなので、ノートの狭い画面でも大丈夫です (図2中のカレンダ部分)。 ウインドウを拡大することで、予定も同時に表示されますので、 広い画面では予定の一覧も可能です。

操作は直感的なので、特に説明する必要も無いと思います。 予定がある所は強調表示され、クリックすることで予定が表示されます。 予定は「鉛筆と時計」のアイコンをクリックすることで、編集可能です。

gemcalはやはり、MHCとの連係でその真価を発揮します。 MHCは、後の解説を御覧ください。

図 2. gemcalの画面

その他の注目株

その他にもスケジュール管理のためのソフトウエアとしては、 以下のようなものがあります。 これらは、FreeBSD PRESS No.4で紹介されています。

  • japanese/jpilot: 本来はPalmとの連係用ソフトウエア。 Palmの機能のアドレスやToDoの管理も可能。

  • japanese/ical: ダブルブッキングしている予定が見やすい。 予定の印刷は月単位などが利用できるため、 壁に張るためには便利。

  • japanese/plan: ネットワーク経由でのスケジュールの共有機能が目玉。 予定印刷はこれも月単位などが指定でき、見やすい。

  • deskutils/moneydance: 前回(No.6)紹介した家計簿ソフトです。 予定の管理もできますので、これを使ってもいいでしょう。

[Case2]予定がメールで降ってくる

最近はIT革命とやらで、やたらと電子メールで連絡をする風潮があるようです。 会議の予定などは電子メール経由で流されることも多いため、 電子メールベースのスケジュール管理ソフトウエアへの需要は大きいでしょう。

MHC(http://www.quickhack.net/mhc/)は、 このような環境を仮定したスケジュール管理ソフトウエアです。 基本的に、MH形式で予定メールをそのまま保存し、 オプショナルヘッダに追加情報を付加することで、 スケジュールの管理を容易にしています。

基本的に対応しているMUAはEmacsベースのWanderlustとMew, Gnusになっています。

deskutils/mhc-*から自分のEmacsにあったものを portsでインストールすると、ドキュメントは /usr/local/share/doc/mhcにインストールされます。 ここの00usage.jisを読んで設定します。 基本的には~/.emacsに以下の設定を追加します。 利用するMUAの設定だけで十分です。

	  ;; MHC
	  ;;; for Wanderlust
	  (autoload 'mhc-wl-setup "mhc-wl")
	  (add-hook 'wl-init-hook 'mhc-wl-setup)
	  ;;; for Mew
	  (autoload 'mhc-mew-setup "mhc-mew")
	  (add-hook 'mew-init-hook 'mhc-mew-setup)
	  ;;; for Gnus
	  (autoload 'mhc-gnus-setup "mhc-gnus")
	  (add-hook 'gnus-startup-hook 'mhc-gnus-setup)
	  ;;; General Setup
	  (setq mhc-base-folder "+schedule")
	  (setq mhc-mail-path   (expand-file-name "/home/oZ/Mail"))
	
ここでは、スケジュールを保存するディレクトリを /home/oZ/Mail/scheduleと仮定しています。

休日を表示したい場合には、 このディレクトリのDOT.schedule.sample.jp~/.scheduleとしてコピーしておきましょう。

スケジュールを登録するためには、アナウンスメールなどで C-c . | と入力します。 日付けなどを推測して、次々に項目を問い合わせてくれますので、 補完されていない部分を入力していきます。 最終的に C-c C-c でスケジュールの登録が完了します。

メールで与えられていない予定を登録するためには、 予定を登録する日時にポインタを合わせたあとで、 C-. e を入力します。

スケジュールの閲覧には C-c . . を使います(図3)。

図 3. スケジュールの一覧

他にもさまざまな便利な機能があるのですが、ここでは紹介仕切れません。 表2に機能一覧をまとめておきますので、 参考にしてください。

表 2. MHCの主な機能

機能デフォルトキーバインド備考
現在の月の予定を表示 C-. .  
次の月の予定を表示 C-. n  
前の月の予定を表示 C-. p  
現在の月をrescan C-. s  
メールからの予定の登録 C-. |  
直接の予定の登録 C-. e スケジュール表示画面でポインタを該当日時に合わせた上で作業が必要
予定の編集 C-. m スケジュール表示画面でポインタを該当予定に合わせた上で作業が必要

Webでのスケジュール提供のためのインターフェースとして web-mhc(http://mhc.haun.org/web-mhc/)というものも 存在します。

[Case3]Webブラウザでグループウエア

PHPGroupWare(http://phpgroupware.org/)は、 Webブラウザを利用したグループウエア環境です。 スケジューラだけではなく、アドレス帳や電子メール、電子ノートなどの さまざまなグループウエアが提供されています。 日本語化はITはあと(http://www.itheart.com/)が 行っており、バージョン毎に提供されています。 portsのバージョン(japanese/phpgroupware)は0.9.12です。

インストール後の設定の詳細は、ITはあとのページを参照ください。 先にMySQL(databases/mysql323-server [1] )やPostgreSQLのデータベースの設定を行う必要があることに 注意してください。 また、標準では${PREFIX}/www/data.defaultにインストールされますので、 既に新たに${PREFIX}/www/dataなどを 作成している場合には注意してください。 以降の説明では、${PREFIX}/www/data/phpgroupware/${PHPGROUPWARE}として参照します。

初期設定はhttp://localhost/phpgroupware/setup/から行います(localhost起動時の場合)。 Webベースの設定のためには、 この前にディレクトリモードを変更するか、オーナをApacheの動作権限を持ったユーザに変更して、 設定ファイルheader.inc.phpが書き込めるようにする必要があります。 初期設定時点で、ネットワーク的に分離されていない場合恐いので、 downloadボタンや viewボタンを使って設定を入手し、 ${PHPGROUPWARE}header.inc.phpというファイル名で設定を 置いた方が無難でしょう。

次にもう一度 http://localhost/phpgroupware/setup/にブラウザでつなぎ、 Setup/Config Admin Loginから 先程設定したパスワードでログインします。 最初の項目である Step 1 - database managementでCreateボタンを押すことで、 データベース項目が作成されます。 この時、エラーがたくさん出てきますが、 Re-Check My Installationボタンを押します。 ここで、Step1は相変わらず未設定になりますが、 構わず Step 2 - Configurationに進みます。 必要な項目を設定したあとで、 管理者とデモアカウント3つを作るために下のリンクをクリックします。 ここで、管理者のアカウントとパスワードなどを設定します。 デモアカウントは管理者でログインした後で削除や更新が可能です。 Step 3 - language managementで Japaneseを選択すれば良いでしょう。

http://localhost/phpgroupware/にアクセスすると ユーザ名とパスワードを入れてログインできるようになります。 エラーが大量に表示されますので、

	  > mkdir -p ${PHPGROUPWARE}/home/templates/default/images
	
してください。 これで、とりあえずエラー無しで動作可能です。

PHPGroupWareの動作の様子を図4にしめします。 PHPGroupWareでは、スケジュールの共有などが簡単にできるので、 複数人のスケジュールを扱う必要がある場合には便利でしょう。

図 4. PHPGroupWareの動作の様子

おわりに

たとえ、スケジュール管理を行っても同期や把握を忘れてはどうしようもありません。 使うのであれば、同じスケジューラを継続的に使うべきでしょう。

さらに、スケジュールを印刷した場合は、印刷物は信じないことが大切です。 まめに出力するか、スケジューラだけを信じましょう [2]

注意

[1]

これは、データベースをローカルホストで動かす場合に必要です。 RUN_DEPENDしていないので注意してください。

[2]

わたしは何度もはまったことがあります(;-;)