毎年7月最後の金曜日は、「システム管理者感謝の日」本年は、7月31日
Tadikarawoは,開発中の個々の作業時刻を記録するためのツールです.
nttdocomoのiアプリの開発を支援するソフトウェアであるiαppli Development Kitにヒントを得て作成しました.
ご自身の作業記録を解析するLifeHackツールとして活用してください.
このアプリケーションを作成した目的は以下の2つです.
cygwinの環境では,大量の出力があるとコンソールからコンパイル結果や実行結果を参照して,必要部分を切り出すことがやりにくかった.
これを簡単に,カット&ペーストできるようにしたかった.
基本的な機能は,以下の3つです.
Javaで作成したので、基本的には、Java 1.4以上のJVMさえあれば、どのようなプラットホームでも動くはずです。
実行環境がない方は、以下のサイトより、JavaTM 2 Runtime Environment (JRE)を入手してインストールしてください。
http://java.sun.com/getjava/ja/
以下のファイルをダウンロードしてください.必要に応じて,ドキュメントもダウンロードしてください.
入手したパッケージファイルを展開し,以下の3つのファイルを取り出してください.
この3つのファイルを作業するディレクトリにコピーしてください.
次に,tadikarawo.iniを開いて,以下の2項目を設定してください.
予め,主要なエディタの実行ファイルの保存場所が書かれています.お好みのエディタを選び,コメントをはずしてください.デフォルトはメモ帳に設定してあります.
ログファイルは,デフォルトで,同じディレクトリ内のworklog.csvに保存されるようになっています.
#Sun May 24 14:13:15 JST 2009 Logfile=worklog.csv Editor=C:\\WINDOWS\\notepad.exe #Editor=C:\\Program Files\\sakura\\sakura.exe #Editor=C:\\Program Files\\TeraPad\\TeraPad.exe #Editor=C:\\Program Files\\WZ Editor\\WZEDITOR.EXE
注意:ディレクトリの区切りとして'\'が2つずつ書かれています.これは,間違いではありません.これは仕様です.必ず、'\\'と記述してください。
sample.cmdファイルを開き,以下のように使用したいコマンドを登録してください.
# Prime Makefile test make clean:クリア:中間ファイル等を削除します. make all:コンパイル: make run:実行:出来上がったオブジェクトを実行します. make backup:圧縮:パッケージを作成のため,圧縮ファイルを作成します.
パッケージ内のサンプルとして入れてあるMakefileとsample.cmdとPrimes.javaを同じディレクトリ内に置いて,実行してみます.
/** * 100までの素数を求める */ public class Primes { static int[] generatePrimes(int n) { // n 個の素数を生成 int k = 0, prime[] = new int[n]; prime[k++] = 2; for (int x = 3; k < n; x += 2) { int i = 0; while (i < k && x % prime[i] != 0) i++; if (i == k) prime[k++] = x; } return prime; } public static void main(String[] args) { final int N = 25; int[] prime = generatePrimes(N); System.out.print("100までの素数"); for (int i = 0; i < N; i++) { System.out.print(prime[i] + " "); } System.out.println(); } }
# Prime test
# テスト
JC = javac
clean:
rm *.class
all:
$(JC) Primes.java
run:
java Primes
backup:
jar cvf primes.zip Makefile Primes.*
jar -i primes.zip
起動は,cygwinのコンソールから,以下のコマンドで起動してください.
java -jar Tadikarawo.jar -c sample.cmd
図2.3[tadikarawo起動画面]のような起動画面が表示されます.
Alt+1,Alt+2,Alt+3,Alt+4の順に、キー操作をするか、コマンドボタンを左から順に,クリックしてください.
図2.5[実行の様子]のように、実行内容とその結果やエラーがコンソールに出力されます.
コマンド | ラベル | コメント | |
---|---|---|---|
1 | make clean | クリア | 中間ファイル等を削除します. |
2 | make all | コンパイル | |
3 | make run | 実行 | 出来上がったオブジェクトを実行します. |
4 | make backup | 圧縮 | パッケージを作成のため,圧縮ファイルを作成します. |
rm *.class javac Primes.java java Primes 100までの素数 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 \ 89 97 jar cvf primes.zip Makefile Primes.* マニフェストが追加されました。 Makefile を追加中です。(入 = 163) (出 = 123)(24% 収縮されました) Primes.class を追加中です。(入 = 1076) (出 = 688)(36% 収縮されました) Primes.java を追加中です。(入 = 756) (出 = 369)(51% 収縮されました) jar -i primes.zip
この時の作業内容が,図2.6[記録されたworklog.csvの内容]のようにタイムスタンプと共に記録されていきます。
コメント機能については,後述します.
# logging start 2009-06-27T23:22:27+09:00,Sat 2009-06-27T23:22:27+09:00,Sat,comment,これより,作業を開始します. 2009-06-27T23:22:48+09:00,Sat,comment,まず,最初に古い実行ファイルを削除します. 2009-06-27T23:23:05+09:00,Sat,command,make \ clean,クリア,中間ファイル等を削除します. 2009-06-27T23:23:26+09:00,Sat,comment,次に,ソースファイルを開きます. 2009-06-27T23:23:39+09:00,Sat,open \ ,D:\nbdir\Tadikarawo\Primes.java 2009-06-27T23:24:05+09:00,Sat,comment,コンパイルをします. 2009-06-27T23:24:19+09:00,Sat,command,make all,コンパイル, 2009-06-27T23:24:46+09:00,Sat,comment,実行します. 2009-06-27T23:24:58+09:00,Sat,command,make \ run,実行,出来上がったオブジェクトを実行します. 2009-06-27T23:25:31+09:00,Sat,comment,コマンドラインから,dirを実行してみます. 2009-06-27T23:25:51+09:00,Sat,execute,dir Primes.* 2009-06-27T23:26:15+09:00,Sat,comment,成功したので,圧縮ファイルにして保存します. 2009-06-27T23:26:30+09:00,Sat,command,make \ backup,圧縮,パッケージを作成のため,圧縮ファイルを作成します. 2009-06-27T23:27:37+09:00,Sat,comment,これで,終了します. 2009-06-27T23:28:07+09:00,Sat,logout ,
メニューとメニューアイテムの機能について説明します。
sample.cmd内に書かれたコマンドがメニューアイテムとして登録されています。最初のコマンドから順に,1から9までのキーボードニーモニックが設定されます。
Alt+1,Alt+2,Alt+3,Alt+4 ......... Alt+9で,それぞれのラベルの内容を実行できます。
ボタンパネルには,sample.cmd内に書かれたコマンドがボタンとして登録されています。最初のコマンドから順に,1から9までのキーボードニーモニックが設定されます。
Alt+1,Alt+2,Alt+3,Alt+4 ......... Alt+9で,それぞれのラベルの内容を実行できます。
以下の作業時刻が,自動的にlogファイルに記録されます.
ボタンのリストの下にコマンド実行欄があります。ここに、コマンドを書き込み、実行ボタンを押してください。shellでコマンドを実行した時と同じように動作し,その実行時間が作業ログに書き込まれます。コマンドリストに登録していなかったコマンドを実行する時に利用してください.
最下段にコメント欄があります。ここに、コメントを書き込み、追加ボタンを押してください。作業ログに、記録時間とともに、そのコメントが書き込まれます。以下のような内容を自由に書いてください。
これらは、自分自身を振り返るための記録となります。未来の自分へのメッセージのつもりで書いてください。
ソースリストはすべて公開しておりますので,必要に応じて,拡張および改良をしてください.
また,力量のある方は,解析ツールの開発をお願いします.データは,単純なCSVファイルなので,さほど難しくないと思います.
配布パッケージ内にある以下のファイルは、サンプルとして作成したcmdファイルです。
ファイル名 | 用途 |
---|---|
etrobocon.cmd | ETロボコン用コマンドセット |
mozilla.cmd | アプリケーションランチャーの例 |