さらさらと消えゆくしょぼーん

書くことないというか、ホント正直時間内からなんだが、
ホントどうでもいいことをボソリ。

どんどん砂のように風化していくショボーンのAAが好きなのだが、
これ「さらさらと消えるショボーン」と言うらしい

(´・ω・`)
(´・ω:;.:...
(´:;....::;.:. :::;.. .....

↑これ。
使いたいときにググってもなかなか出てこないのでメモ。

VBA / VBS で正規表現による関数を使った置き換え

JScriptのString.replaceメソッドは非常に便利だ。
置き換え文字列に、「文字列」ではなく「関数」が使えるところが意外と使える。

"test0 test1".replace(
    /\w+(\d)/g,
    function($0,$1){return (Number($1)+1).toString();})

てな具合に。

普段はWSHではVBSなんぞ使ったりしないが、
たまにどうしてもVBAやVBSを使わなくてはならない場合がある。
そんなときにそれっぽい動作をする様なのを、
不完全ながら自作してみた。

続きを読む

WSHで強制的にcscriptで起動させつつエラーは出す

JScriptで、ダブルクリックしたときにコマンドプロンプトで強制的に起動するとき
こんな感じで起動してやると、
Echoがたくさんあっても大変なことにならず、
しかもエラーコードもしっかり返すことができる。

function CRun(){
    if (!(/CSCRIPT\.EXE/i).test(WScript.FullName)){
        var WshShell = new ActiveXObject("WScript.Shell");
        var strParam = "";
        for (var i = 0; i < WScript.Arguments.Count(); i++){
            strParam += " \"" + WScript.Arguments(i).replace("\"", "\"\"") + "\"";
        }
        WScript.Quit(WshShell.Run("cmd.exe /v:on /s /c \"cscript.exe //nologo \""
            + WScript.ScriptFullName + "\"" 
            + strParam + " & pause & exit /b !ERRORLEVEL!\"", 8, true));
    }
}
CRun();
WScript.Echo("CScript!");
WScript.Quit(8);

環境変数の遅延展開をつかって、ERRORLEVELを戻しているのがミソ。
これで、エラーが起きたときの処理もできる。
私は業務を軽減するツールとか作るときに割とよく使う。

Google PAC-MANを載っけてみた

昨日一昨日で話題になっていたGoogle PAC-MANが移植されていたので、早速乗っけてみた。
#日付変わっちゃったね

いや、2日間のDoodleのために、これだけのものをJavaScriptで書いてしまうGoogle恐るべしですな。
音はFlashで鳴らしても、描画はJavaScriptで、ってそこまでこだわるか。

うるさい?
知らんがな。

本家(リンク切れ)
GitHub macek/google_pacman(元ソースはこっち)

続きを読む

Inkscapeで半透明に陰を作る

Inkscapeで陰を作る際、パスをコピーして、ぼかして後ろに置けば簡単にできるが、
陰の元となるものが半透明の場合、当たり前だが後ろに隠れているはずの陰も透けてしまう。

Inkscapeというのは、フリーの"ドロー"ソフトで、Adobe Illustratorのフリー版というか、Gimpのドロー版というか、ロゴとかのベクターイメージを作るソフト。
多機能すぎて全然使いこなせないけど。

このサイトのロゴを書くときに気にたったので、別にたいしたテクニックじゃないけど、覚え書き程度に。
続きを読む

Windows7 (64bit) で Ztop

個人的には必須アプリとなっているZtop
詳しい便利さは窓の杜に譲るとして、
これをWindows7 (もしかすると64bitだけかも)で使うと、ちょっと問題が起こる。

フォーカスがなくても、マウスの直下にあるウィンドウにホイールが送れる機能があるのだが、
(つまり最前面に出ていないウィンドウも、ホイールでスクロールできる)
この機能をONにすると、Firefoxのタブ切り替えが片方にしかできなくなる。

XPで使っていた頃はそんなこと起こらなかったので、Windows7か、64bitか、どちらかの問題だろう。

Ztop自体は64bitに対応しておらず、作者サイトの実験室なるページで64bit版がひっそり公開されている……のだが、これに切り替えても、問題は解決しない
※64bit版は通常(32bit)版と同時起動で使うことに注意。
 (64bitと32bitの両方のアプリで、ウィンドウメッセージをホックするためだろう。)

んじゃぁ、「ホイールを直下のウィンドウに送る」使わなければいいじゃない、ということになるが、
この機能はかなり多用していたので、外したくない。

そんなわけで、ちょこちょこ調べてみると、どうやら64bit環境で発生するこの問題の解決方法は、
「ホイールを直下のウィンドウに送る」をOFFにする。
「は?」と言われてしまいそうだが、ちょっと待って欲しい。
隠し機能で入っている、マウスボタンの機能で同様の機能を使えばいいようだ。
続きを読む