本日の成果

本日の成果を記録していきます。

月: 2010年4月

  • AutoHotKeyもの3点

    AutoHotKeyもの3点
    Category:

    本日の成果:AutoHotKeyもの3点

      前に書いたエントリで導入したAutoHotKeyで、いろいろと細かい機能を作って使っているのですが、その中でもそこそこ他の人も使える可能性がありそうなものを単体のexeファイルにしてみたので公開するよ。とても小粒なのでわざわざSourceForgeとかにプロジェクト申請する気にならない・・・。(^_^;

      その1 「IMENotifier」

      IMEのON/OFFが切り替わるたびに、画面中央に短時間、小さなウィンドウを表示して、オンになったこと/オフになったことを都度知らせます。

    IMENotifierの動作イメージ

      手前味噌ですが、私自身はこれさえあればWindows標準の言語バーは要らないというくらい便利に感じております。これを使う前は、IMEのオン/オフが判らないとどうしようもないので言語バーを出して、でも年中出てると邪魔なのでXLangBarというソフトで直接入力時は言語バーを非表示にしていました。しかしそのように目立たなくすると今度は必要なときに目に入らずに、ayamattenyuuryokusiteしまいます。その点このツールでは画面中央に表示され、オン時とオフ時とで色が違うので判りやすく、しかもすぐ消えるのでさほど邪魔にもなりません。「さほど」というのは、例えばソフトウェア側でIMEのオン/オフを高速で何度も繰り返すようなソフトがあったような場合は、このツールはそれにいちいち反応して画面表示しますので、そのような場合には邪魔になるかもしれないということです。そのようなときはタスクトレイのアイコンを右クリックして出るメニューから動作を一時停止してください。

      IMENotifier-1.00.zip

      その2 「LazyF1」

      そもそもAutoHotKeyを入れるきっかけとなった[F1]誤操作対策ツールです。作成の背景等はこちらを参照。
      [F1]キーを、しばらく押し続けないと反応しないようにします。

      LazyF1-1.00.zip

      その3 「MouseNoAway」

      これはこちらのエントリで書いた、マウス跳び対策のツールです。そもそも私のところでだけ発生するような変な現象ではあるのですが、ひょっとしたらどこかにニーズがあり、その人が何かの間違いでここに辿り着く可能性もありますので、というかせっかく作ってみたので公開します(笑)。

      MouseNoAway-1.00.zip

  • GetSpecialFolderPath.bat を作った

    Category:

    本日の成果:GetSpecialFolderPath.bat を作った

      私はWindowsのコマンドプロンプトのバッチファイルをかなりヘビーに使い倒してる方だと思います。バッチファイルは私はMSX-DOSの頃から使ってました。MSX-DOSでは単に順番にコマンドを実行する(たまに一時停止する)くらいの機能しかないのですが、MS-DOSでは環境変数やERRORLEVELを使った制御もでき、Windows NTからはcommand.comでなくcmd.exeになってまた大幅に拡張され、その後Windowsのバージョンアップに伴って少しづつ機能が増えたり仕様変更されたりしているようです。

      ただ、そういう屋上屋の歴史の結果として例によって仕様が破綻してまして、やや複雑なことをやろうとすると仕様なのかバグなのか判らない謎の挙動を示したりします。個人的にはバッチファイルはかなり上手く行っていない方ではないかと、ややこしいバッチファイルを作る度に思います。UNIXと違ってプログラムのパラメータは1個の文字列として渡されるだけで、切り分けはプログラム側で行わなければならない、ということがさらに話をややこしくしていると思います。
      まぁその辺も踏まえて出してきたのがWindows Script HostとかWindows PowerShellだと思うんですが、それらは古い環境だと入ってなかったりするんですよね・・・。

      話が逸れました。バッチファイルを作る話でした。バッチファイル内では環境変数でWindowsのシステムディレクトリとかProgram Filesとかの位置を知ることができますが、その類の全部環境変数に入ってるわけではないので、例えばスタートメニューやSendToの位置は判らないのです。そして悪いことにそれらの位置はWindowsのバージョンによって異なるうえに、その手のツールを使えば任意のフォルダに設定できたりするので、バッチファイルからそれらをアクセスしようとすると、本来やりたい処理よりも操作する先のディレクトリを決めることの方が大変なくらいでした。
      しょうがないのでその辺を楽にするバッチファイルを作りました。バッチファイルなのでWindows 2000以降ぐらいなら多分どこでも動きます! しかし、中身は実はRubyスクリプトなので、パスの通ったディレクトリにruby.exeが必要です!! (ダメじゃん)

      GetSpecialFolderPath.zip

      バッチファイルなので、他のバッチファイルから呼び出すときは、callコマンドと組み合わせて使います。

    call GetSpecialFolderPath CSIDL_STARTMENU

    などとすると、スタートメニューのパスを標準出力に出力します。

    call GetSpecialFolderPath CSIDL_STARTMENU STARTMENU

    などと、2つ目のパラメータを与えると、環境変数(この例では%STARTMENU%)に結果を格納します。

  • ZumoDrive をやめて Dropbox にした

    Category:

    本日の成果:ZumoDrive をやめて Dropbox にした

      複数マシンで同期を取るストレージサービスとして、私はこれまでZumoDriveを使っていたのですが、あまり有効に使えていませんでした。というのは、私のニーズとこのサービスの特徴があまりマッチしていなかったということだと思うのですが、ZumoDriveが作成した仮想ドライブは、その中のファイルを読み書きしようとしたときに初めてクラウドから取ってくる(その際キャッシュにあれば再利用する)という仕組みなので、レスポンスが遅く、しかもその時にネットに接続していないとダメということになるのです。もちろんこれは、全ファイルをPC上にキャッシュしておく必要がなく、実ドライブよりも大きな仮想ドライブを作成できるという、ZumoDriveの利点の裏返しなので原理上当然なのですが。その他、なんだか書き込んでから他のマシンに反映されるまでの時間が長く感じました。

      そこでZumoDriveをやめて、Dropboxを使うことにしました。DropboxはZumoDriveと逆に、全ファイルをあらかじめ常に最新の状態に保っておくようにしている代わりに、その分それらファイルの容量を各マシンでまるまる消費します。これで単独のドライブにして固定のドライブ文字を割り当てられるとなお良かったのですが、最近はWindowsでも自分のホームディレクトリ以下に何でも置くのが主流なのね・・・。

  • WinMerge Portable 改造版 v1.03

    Category:

    本日の成果:WinMerge Portable 改造版 v1.03

      昨日、普段使わない環境で、私が改造して公開しているところのWinMerge Portable 改造版を起動したところ、起動時のスプラッシュスクリーンを非表示にしていた筈なのに表示され、しかもそれが消えない(笑)という現象に遭遇しました。これまでそのようなことはなかったので、何が原因なのか判らないのですが、とりあえず対策を施して新版をリリースしました。

  • DCエミュ試した

    DCエミュ試した
    Category:

    本日の成果:DCエミュ試した

    フォォォォ斑鳩が! 斑鳩が!!

      ほぼ実機なみの速度で動いたんですが微妙に音と画面がズレる。やっぱりまだ実機のほうがいいな・・・。