キータイプ数をカウントしたい理由
自分が思うに、PCでの作業はインプットとアウトプットに大別できる。例えば、サイトや動画を閲覧するような受身の作業がインプット、文書作成やコーディングなど成果物がある作業がアウトプットである。これを前提に考えれば、自分が積極的にアウトプットしたかどうかを判定するには、キータイプ数を計測すればいい、ということになる。かなり強引だけど、あながち間違っていないと思う。
キータイプ数をカウントできるソフトを探す
ネットを検索したら、とりあえず2つ見つかった。
【レビュー】PCを利用した時間帯を把握するのに便利なキー入力のカウントツール「KeyCounter」 – 窓の杜
http://www.forest.impress.co.jp/docs/review/20150911_720779.html
窓の杜 – 【NEWS】1日のキー入力数をカウントして折れ線グラフを表示する「タイプ数カウンター」
http://www.forest.impress.co.jp/article/2006/05/24/typecounter.html
前者はシンプル、後者は多機能なソフト。ダウンロードして試してみたところ、共に時間当たりのタイプ数はグラフで表示されるものの、残念ながら数値で得ることはできなかった。
キータイプ数をカウントする仕組み
キータイプ数をカウントするソフトを作るのは難しくない。Windowsのグローバルフックの仕組みを使ってキー入力をフックすればよい。
ネットを探すとC言語のサンプルが見つかったけど、C言語はちょっとだるい。
グローバルフックを使ってみた – Gobble up pudding
http://fa11enprince.hatenablog.com/entry/2015/04/10/051454
C#のサンプルも発見。これはよさげ。
Low-Level Keyboard Hook in C# – Stephen Toub – Site Home – MSDN Blogs
http://blogs.msdn.com/b/toub/archive/2006/05/03/589423.aspx
これらサンプルを参考に、時間ごとのキータイプ数をカウントするソフトを書いてみようと思う。