« 2006年1月 | トップページ | 2006年3月 »

2006年2月27日 (月)

DDwin を Firefox や Meadow から使うとき latin-1 のアクセント記号を抜くようにした。

Firefox について同じようなことをやってる人がいた。《chez sugi:firefox と DDWin》を参照すると、EPWING の規格上、独仏語だとアクセント文字がないほうが良いらしい。ちなみに latin-1 の文字列を sjis にencode しようとすると、アクセント記号と文字にわかれるのではなく、文字化けしてしまう。

そういったわけなので、アクセント付の文字をいちいちアクセントなしに変換する関数を書いた。私は独仏語辞典を持ってないから、Deja vu とかそのあたりの国語辞典に載ってる単語でしか確認できないけど。

ついでなので、《ddwin.el》のほうにも同じような関数を書いた。できたスクリプトについては《DDwin.js》へ。
更新: 06/02/27
初公開: 2006年02月27日 00:37:55
最新版: 2006年02月27日 10:01:42

2006-02-27 00:37:52 (JST) in Emacs/Meadow Windows アプリ Firefox | | コメント (0) | トラックバック (0)

2006年2月26日 (日)

Windows のコマンドライン cmd.exe 用のエスケープってどうやるの?

ActivePerl からパイプを使って GnuPG を起動しようとしたが、 perlipc に載ってる方法ではダメみたい。pipe の fileno で取ったファイルディスクリプタもうまく渡せないみたいだし。

それで次のようなことをしようとしたんだけど、pipe のコマンドの引数をリストでは渡せないっていわれる。

open(GPG, '-|', $GPG, '--list-keys') or die;


しょうがないので、コマンドラインを連結しましょうということになったのだが、Windows の cmd.exe の構文がわからない。

ググってみると《CMD.EXE TIPs》という Wiki に構文が書いてあった。そこの文章を参考にいろいろ試してみたけど、次みたいのでいいのかな?

sub quote_for_command {
  my $r = "";
  while (@_) {
    my $arg = shift;
    $arg =~ s/\%/^\%/gs;
    $arg =~ s/"/"""/gs;
    $r .= " " if $r ne "";
    $r .= "\"$arg\"";
  }
  return $r;
}


でもこういうのは需要あるはずだから探せば見つかりそうなものなのに、 Perl でやってるのを、ちょっと見つけられなかった。
更新: 06/02/26
初公開: 2006年02月26日 05:47:05
最新版: 2006年03月11日 03:58:07

2006-02-26 05:47:03 (JST) in Perl Windows アプリ | | コメント (0) | トラックバック (0)

native2ascii.pl をいちおう作ってみた

Firefox の .xpi をいじろうとすると、locale の部分で .properties の拡張子を持ったファイルを JAVA で使える形式にしないとダメなんだそうだ。そのためのコマンドとして native2ascii というものが JDK に入っているらしい。

ただ、それだけのために JDK を入れるのもバカらしいので、Perl のスクリプトを書いてみた。native2ascii.pl がそのファイル。

ものすごいテキトー。フィルタらしく一行づつ処理せず、ファイル全部をいったん読んで、一気に処理してる。--encoding=japanese と指定すると自動判別するんだけど、guess_encoding も最初の n バイトとかじゃなくて、全部わたして guess させてる。

まぁ、自分が使えりゃそれでいいし、ダメだったら JDK をすなおにインストールすればいいし。

更新

2006-02-28
Surrogate Pair に対応。
Javaにおける文字/文字列の扱い方》を参考に \uuXXXX に対応。
2006-02-26
公開。
更新: 06/02/26,06/02/28
初公開: 2006年02月26日 05:31:34
最新版: 2006年02月28日 03:47:16

2006-02-26 05:31:33 (JST) in Perl Windows アプリ JRF 作成ソフトウェア | | コメント (1) | トラックバック (1)

2006年2月25日 (土)

DDwin.js: Firefox から電子辞書 DDwin (または EBWin) を起動する

JavaScript Actions(JSActions) を使って Firefox の中でセレクトした文字列を EPWING 対応電子辞書閲覧ソフト DDwin で検索する。

基本的には一本道で、次のような手順。

1.
JavaScript Actions のサイトから最新版と ScriptSet をダウンロードし、インストール。動くようにする。
2.
上と同じところから JSAButton をダウンロードし、インストール。 Button フォルダを作っておく。
3.
DDwin 用の javascript ファイルを作る。例えばDDwin.jsを selection/ 以下に置き、さらに、これを Button/ 以下に名前を変えてコピーする。例えば 70_NL_DDwin.js などとする。
4.
DDwin のアイコンを適当なツールで取り出し、先の Button/ 以下に 70_NL_DDwin.png などとして書き出す。私は 16x16 で書き出した。
5.
ツールバー上でカスタマイズを選択し、JSActionsButton というのを適当な場所に置く。このボタンを一度クリックすると、先のアイコンが表示される。


DDwin.js は次のようなファイルにした(一部省略)。js のエンコーディングは sjis でいいみたい。DDwin の替わりに EBWin を使うのもほぼ同様で、exec のところが違うだけ(EBWin.js)。

var query;

if(_jsaCScript.context.isTextSelected){
    query = window.getSelection().toString();
} else {
    var mes = "検索文字列を入力してください。";
    mes = _jsaCScript.convertCharCodeTo(mes, "shift_jis");
    query = prompt(mes, "");
}

if(query != null) {
    query = remove_latin_1_accent(query);
    query = query.replace(/^\s+/, "");
    query = query.replace(/\s+$/, "");
    query = query.replace(/^[\x21-\x2F\x7B-\x7E]+/, "");
    query = query.replace(/[\x21-\x2F\x7B-\x7E]+$/, "");
    query = _jsaCScript.convertCharCodeFrom(query, "shift_jis");
    _jsaCScript.exec("c:\\Program Files\\DDwin\\ddwin.exe", 
                     ",2,Firefox用,G1," + query);
}

function remove_latin_1_accent(s) {
    s = s.replace(/[\xC0-\xC5]/g, "A");
    // ...省略...
    s = s.replace(/[\u017F]/g, "s");
    return s;
}


"Firefox用"は DDwin で使うグループ名。


ちなみに、これコマンドラインに渡すとき convertCharCodeFrom なんだよね。これを convertCharCodeTo を使うと思ってはまってしまった。 JSActions 2.2.0 のバグかもしれないと思ったが《掲示板》をよく見ると exec を使う例で、ちゃんと From でやっていた。

JSActions の今の管理人によると

>
ぶっちゃけ、自分も使ったときに間違ったんですが、JSActions 0.8系にあわせました。


……だそうで convertCharCodeFrom であっているよう。FromUnicode にしてくれたらわかりやすかったのに。


なお、通常ここに書いたようなことをやりたければ、DDwin の配布ページでいっしょに公開している DDpop を使うのが普通なのかもしれません。


参考

ファイル

DDwin.js
JSActions の selection または JSAButton で使うためのスクリプト。
DDwin-by-Dblclick.js
JSActions の startup に置くことで、 DDwin.js をダブルクリックで呼べるようにする。
EBWin.js
DDwin の替わりに EBWin を使う場合のスクリプト。
jsactions.patch
jsactions_2.2.0.xpi でテキストエリアなどのセレクションも取れるようにするためのパッチ。要 .xpi の展開、ビルド。ただし、現在のバージョンではすでに統合されていて不要。


更新

2006-03-10
jsactions.patch を使うときフォームの中で button などについてもセレクションを取ろうとしてエラーになっていたので、text と textarea のみ対応することにした。
2006-02-28
フォーム内のセレクションに対応するためのこのパッチ を jsactions_2.2.0.xpi にあてた場合に対応。
2006-02-26
独仏語の検索のために latin-1 のアクセント記号を抜くようにした。単語の前後の非英数の ASCII 文字をとりのぞいた。
2006-02-25
セレクションがないときに入力ボックスを開くようにした。
更新: 06/02/25-06/03/10,2009-02-26
初公開: 2006年02月25日 01:08:37
最新版: 2009年02月27日 19:29:25

2006-02-25 14:22:08 (JST) in Windows アプリ Firefox | | コメント (4) | トラックバック (3)

2006年2月22日 (水)

Movable Type で「記事と同じカテゴリ内の最近の記事」を表示する。

プラグインを使わなくてもSSI とインデックステンプレートを組み合わせて使えば、「記事と同じカテゴリ内の最近の記事」を表示することができる。

当初、 Movable Type では Movable Type のタグの中で Movable Type のタグをネストして使うことはできないため、このようなことは不可能だと思っていた。

しかし、Apache 1.2 以降の SSI には if 文があり、その中で正規表現(というか部分文字列のサーチ = strstr)が使えることを知り、ココログプロで使える「新しいインデックステンプレート」と組み合わせれば、可能なはずだと思い致った。

問題は、このサイトではカテゴリ名に '/' を使っており、ラベルでカテゴリを指定すると正規表現の '/.../' とぶつかってしまうため、MTCategoryID を使いたいところだが、MTCategoryID は Category Archive 内などでそのまま使えない。今のところ Indivisual Archive に表示するだけなのであまり関係ないが、Archive 内などでサイドバーとして読み込もうとすると不具合が出るようにはしたくない。

しばしとまどったが《MovableType Tips: MovableType Tips Archives》にある方法でそれが解決できることがわかった。

続きを読む "Movable Type で「記事と同じカテゴリ内の最近の記事」を表示する。"

2006-02-22 17:46:31 (JST) in ウェブログ・ココログ関連 | | コメント (3) | トラックバック (3)

ddwin.el: Meadow から DDwin を使う

Meadow で電子辞書を使うには普通、Lookup を使うところなのですが、使えない辞書も多いようですし、更新も止まっているようなので、 DDwin32 に乗り換えました。

DDwin は起動時のオプションにより、簡単に既存のウィンドウで検索するよう指定できます。そこで突貫工事で Meadow から call-process 関数を使って DDwin に検索語を渡す Elisp を書きました。

他の誰かが作ってるかもしれませんし、Emacs 使いなら誰でも作れるレベルの物ですが、いちおう公開しておきます。

まず、DDwin 側で串刺し検索をするためのグループを作ってください。ここでは、「Meadow用」という名前だとします。

この ddwin.el をダウンロードして c:/Meadow/site-lisp 以下にでも置き、.emacs の適当なところに次の行を足してください。

(require 'ddwin)
(setq ddwin-dictionary-group "Meadow用")
(setq ddwin-dictionary-number "G1")
(global-set-key "\e\"" 'ddwin-search-word-at-point)
(global-set-key [M-mouse-3] 'ddwin-search-word-at-mouse)


これでインストールは終り。

あとは、M-x ddwin-search-word で、その後に単語を入力、または M-x ddwin-search-region でリージョンを指定して検索します。M-" を押すと、そのカーソル位置にある単語を検索します。

Alt を押しながらマウスの右ボタンを押すと、直前にマウスをドラッグしていればそのリージョン、そうでなければカーソル位置の単語が検索されます。メニューバーの Tools に DDwin を登録してあり、マウスのときとほぼ同じ動作をします。


ただし単語の切り出しは、「ひらがな」「カタカナ」「それ以外の日本語のワード」「日本語以外のワード」の続きしか判別しません。

ほとんどテストしてないので、不具合があると思います。何かあれば、ここにコメントしていただけるとうれしいです。

更新履歴

2011-05-13
call-process の前で sjis-dos を指定するようした。
2006-02-27
replace-regexp を関数から使わないようにした。
2006-02-26
独仏語の検索のために latin-1 のアクセント記号を抜くようにした。
2006-02-25
マウスに対応。
2006-02-21
'ー'に対応していなかったのと、判別のミスを修正。
2006-02-20
作成&公開


なお、Permalink に関しては http://jrf.cocolog-nifty.com/archive/ddwin-el.html をご利用ください。
更新: 06/02/20-06/02/27
初公開: 2006年02月21日 00:10:08
最新版: 2011年05月13日 20:57:55

2006-02-22 14:41:23 (JST) in Emacs/Meadow JRF 作成ソフトウェア | | コメント (0) | トラックバック (2)

2006年2月21日 (火)

lwp-request のオプション -m を忘れて http://www.GET.com が表示されていた

さっき気付いた。ここに載っていた 'lwp-request GET' をそのまま使うと、何か変な HTML データが先に表示される。よく見ると、'lwp-request -m GET' じゃないとダメだった。

参考に次のような感じになる。

$ /usr/bin/lwp-request GET | head
<html>
<head>
<title>Great Eastern Technology - Sun, Silicon Graphics, SGI, Sales, Repair, Maintenance and Alias/Wavefront 3D Animation and Graphics</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<META name="keywords" value="Sun, Sun Microsystems, Sun Microsystems, SGI, Silicon Graphics, SGI
Maintenance, Silicon Graphics Maintenance, Sell,
Buy, Repair, Support, Maintenance Contract,
Refurbished SGI, Rapid Prototyping, Rapid Prototype, ZCorp Printer, Alias, Alias/Wavefront, Maya, 3D
Software, Network Services, System Integration,
SGI Maintenance Training, Animation Software, 


lwp-request 内で URI::Heuristic::uf_uri を使って GET を http://www.GET.com に展開しているため、このようなことが起きている。

さすがに GET を展開するのは、いくらなんでも要らんだろう。
更新: 06/02/21
初公開: 2006年02月21日 04:29:27

2006-02-21 04:31:05 (JST) in Perl HTML/XML/CSS | | コメント (0) | トラックバック (0)

lwp-request で https を使うと Segmentation Fault する。

現在、Cygwin の setup でインストールされる openssl-0.9.8a を使うと、 Crypt::SSLeay が make test で失敗します。openssl-0.9.8-2 などにすれば大丈夫なはずです。

'lwp-request -m GET https://...'が失敗するのも同じ理由と思われます。 Crypt::SSLeay が対応するまで openssl-0.9.8a を使わないようにするのが今のところの対処法のようです。

更新: 06/02/16,06/02/21
初公開: 2006年02月17日 13:18:10

2006-02-21 04:15:15 (JST) in Cygwin Perl | | コメント (0) | トラックバック (2)

ココログでスクリプトなどからファイルを削除する

ココログでは XML-RPC を使って同じ名前のファイルをアップロードすると付番されてしまう。Atom や XML-RPC API でスクリプトなどを使って管理する者にとって非常にやっかいな問題である。なぜなら、これらの API にはメディアファイルをアップロードする機能はあっても削除する機能はないからである。 (記事は削除できる。)

ただ、Perl の LWP モジュールなど https が使えるのならば、ココログのユーザー向けスクリプトに直接コマンドを送ってしまうことができる。このとき POST じゃなくても良く GET で良い。例えば column/test/test.css-1 というファイルを消そうと思ったら、コマンドライン上からなら次のようにすれば良いようだ。

lwp-request -m GET "https://app.cocolog-nifty.com/t/app/control/files?__mode=delete&type=file&path=column/test&id=column/test/test.css-1&username=XXX&password=XXX"


ユーザーは普段は __mode=delete_confirm を使っているが、__mode=delete を使うと確認なしに削除してくれるので都合が良い。もちろん XXX のところは自分のアカウント名とパスワードでなければならない。

更新: 05/03/30,06/02/16,06/02/21
初公開: 2006年02月16日 04:22:36

2006-02-21 04:14:13 (JST) in ウェブログ・ココログ関連 HTML/XML/CSS | | コメント (0) | トラックバック (2)

2006年2月16日 (木)

emachines のオンボードサウンドでヘッドフォンを使うとものすごいノイズがある

オンボードサウンドをヘッドフォンで聞くとものすごいノイズがあったので、いやになってサウンドカードを買おうかとも思ったが、一度ドライバの更新がないかだけ確かめておこうと思い留まった。

これはハードウェアのノイズによるので、ドライバを update したところでどうにもならないだろうと思いきや、かなりノイズが低減されてしまった。

……謎だ。

ちなみに、マザーボードは FIC VG33 か、それがベースになったものらしい。サウンドドライバは Realtek ALC650 の WDM_A382.exe とかいうのをダウンロードすれば良かった。
更新: 05/06/21,06/02/16
初公開: 2006年02月16日 03:03:12

2006-02-16 04:49:57 (JST) in ハード | | コメント (0) | トラックバック (0)

Ghostscript で -dSAFER にすると日本語が使えない

gs で -dSAFER にすると、日本語関係でエラーが出る。これは FONTPATH が通っていないところは、読まないことになっているからで、例えば次のようにすると解決する。

export GS_FONTPATH=/cygdrive/c/WINDOWS/fonts 
更新: 05/04/25
初公開: 2006年02月16日 04:45:38

2006-02-16 04:46:59 (JST) in Cygwin TeX | | コメント (0) | トラックバック (0)

Firefox などの CSS3 を使ってローカルなリンクに別の色を付ける

ローカルなリンクと外部へのリンクを区別したい場合、Firefox など CSS3 を使えるブラウザ相手には、次のようにすれば良い。

a:link[href^="file:"] { color: lime; }
a:link:not([href*=":"]) { color: green; }
a:visited[href^="file:"] { color: olive; }
a:visited:not([href*=":"]) { color: olive; }


ちなみにこのサイトではだいたい次のように設定している。

a:link { color: #cc3333; }
a:visited { color: darkred;}
a:active { color: #ffcc33;}
a:hover { color: #ffcc33;}

a:link:not([href^="http://jrf.cocolog-nifty.com/"]) { color: blue; }
a:link:not([href*=":"]) { color: #990000; }
a:visited:not([href^="http://jrf.cocolog-nifty.com/"]) { color: purple; }
a:visited:not([href*=":"]) { color: darkred; }
a:active:not([href^="http://jrf.cocolog-nifty.com/"]) { color: #ffcc33; }
a:active:not([href*=":"]) { color: #ffcc33; }
a:hover:not([href^="http://jrf.cocolog-nifty.com/"]) { color: #ffcc33; }
a:hover:not([href*=":"]) { color: #ffcc33; }


更新: 05/05/07,06/02/16
初公開: 2006年02月16日 03:58:17
最新版: 2006年03月01日 14:16:33

2006-02-16 03:58:17 (JST) in HTML/XML/CSS Firefox | | コメント (0) | トラックバック (1)

XML や XHTML のチェックに xmllint --valid を使う

libxml2 付属の xmllint を使って XML や XHTML のチェックをしようとすると、default ではいちいち dtd をリモートに読みに行ってしまう。そこで、 /etc/xml/catalog を作りローカルのファイルから dtd を読むようにした。 catalog に指定があると /etc/xml 以下のファイルなども読ませることができる。

まず、次から取ってきた DTD を /etc/xml/xhtml1-strict.dtd などとして置く。

>
XHTML 1.0のDTD http://www.w3.org/TR/2002/REC-xhtml1-20020801/#dtds
entity sets(*.entファイル)も必要です。


次のように catalog を設定した。

<?xml version="1.0"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
  <public publicId="-//W3C//DTD XHTML 1.1//EN" uri="/etc/xml/xhtml11-flat.dtd"/>
  <public publicId="-//W3C//DTD XHTML 1.0 Strict//EN"
    uri="xhtml1-strict.dtd"/>
  <public publicId="-//W3C//DTD XHTML 1.0 Transitional//EN"
    uri="xhtml1-transitional.dtd"/>
  <public publicId="-//W3C//DTD XHTML 1.0 Frameset//EN"
    uri="xhtml1-frameset.dtd"/>
</catalog>


上は、ほとんど下記「参考」より引用しただけ。

ちなみに次のような alias があると便利かも。

alias xmlvalid='xmllint --noout --valid'


更新: 06/01/16,06/01/28,06/02/16,06/02/27
初公開: 2006年02月16日 03:37:15
最新版: 2006年02月27日 22:08:53

2006-02-16 03:44:13 (JST) in Cygwin HTML/XML/CSS | | コメント (0) | トラックバック (0)

「1607:InstallShield Scripting Runtime をインストールできません」

とある USB 無線 LAN クライアントを導入しようとするがドライバの install で失敗した。「Internal Error 2203. *.ipi, -2147287035」とか「1607: InstallShield Scripting Runtime をインストールできません」とか言われた。

この原因は TeX や Cygwin を導入するときに設定した c:\tmp のパスのパーミッションが 700 となっていて、SYSTEM グループのユーザーも書けなくなっていたことにあった。

環境変数 TEMP を使うインストールがそのような設定後はじめてだったことに気付かず、ドライバやインストーラのバージョンの違いによるバグと思い込み、かなりはまった。


どうもこの記事が最近よく見られているようで、以上の情報だけでは申し訳ないので、いくつかリンクを。

私は Cygwin を使っているため、Windows XP Home Edition でも簡単にアクセス制御ができます。しかし、普通は Home Edition の場合、フォルダのセキュリティタブからアクセス権を設定できません。

次のリンクによると二つの方法があるようです。

方法 1.
セーフモードを使う。
方法 2.
コマンドプロンプトから cacls というコマンドを使う。



方法 1.
セーフモードを使う。


起動時に F8 キーを押してセーフモードで起動すると、Home Edition でもフォルダのプロパティのセキュリティタブからアクセス権の設定ができるようになります。そこで Temp のフォルダに Administrators と SYSTEM を追加して共にフルコントロールにします。英語でよろしければ次が参考になるかもしれません。

方法 2.
コマンドプロンプトから cacls というコマンドを使う。


「スタート→アクセサリ→コマンド プロンプト」として次のコマンドを実行すれば、おそらく上と同じことができると思います。

C:\>cacls %TEMP% /E /P SYSTEM:F
処理ディレクトリ: C:\Temp

C:\>cacls %TEMP% /E /P Administrators:F
処理ディレクトリ: C:\Temp



ただし、私はフルコントロールにできるところまでしか確認していません。 Cygwin なので chmod 777 しました。TEMP は普通、誰でも書けるようにしておくものですから……。chmod +t は Home Edition なんでやってませんでした。もちろん、方法 3 として Cygwin をインストールすることもできますが、すでにインストールしているような人以外は無用の長物です。

他に iPod の FAQ として、Temp を消して作り直すというワザも紹介されていました。

ところで、この記事だけアクセスが多いということは、やはり iPod が原因でここに来られているのでしょうか……
更新: 05/06/17,06/03/11
初公開: 2006年02月16日 03:13:45
最新版: 2006年03月11日 03:50:10

2006-02-16 03:16:33 (JST) in ハード Windows アプリ | | コメント (2) | トラックバック (0)

2006年2月10日 (金)

Firefox のダウンロードがミョーに遅くてイライラする

ググって調べるとバージョンアップ時に上書きインストールをし、ダウンロードの履歴がたまっているとそうなるようです。「上書きインストールなんかするな」って論調でしたが、とりあえず履歴を消すことで大幅に改善されました。うーん、まとめサイトの FAQにのせといて欲しいぐらい。

以上が記事。下がグチ。

グチ1
でも、上書きインストールってやりますよね?だって、そうじゃないなら、プラグインのアップデートウィザートなんて出ないだろうし。インストーラじゃなくアーカイブで、その Readme のインストール方法に注意があれば、アンインストール後、再インストールとかもしますけど。

グチ2
ちなみに、Wiki だけど、開発者側じゃないから、確証できないし、必要最小限これをやるってのがわからないんで、私は書きたくないんです。皆がユーザーだったら自分も同じ立場なんで書く気になるけど、中に開発関係者がいるとどうも気おくれするんですよね。他のユーザーはどうなんでしょ?この辺りオープンソースの意外な弱点なのかも。
更新: 06/02/10
初公開: 2006年02月10日 03:45:20

2006-02-10 04:21:45 (JST) in Windows アプリ Firefox | | コメント (0) | トラックバック (0)

液晶ディスプレイで 3D 表示がちょっと変

フィギュア写真》の背景を撮るため、Winamp の Milkdrop ビジュアライザーを使っていて、どうも白いモヤみたいなのがかかっておかしいと思っていた。他のマシンで動いている Milkdrop に比べて色づかいも貧相。

プリセットが違うのかな?と、とりあえず、ここの Milkdrop のプリセット集をもらってきた。

あれ゛?増えてないぞ。あー、何だ。追加プリセットが install されるディレクトリが、C:\Program Files\Winamp\Plugins\Milkdrop\All Presets だから、元々のプレセットをそこにもコピーして、'l' を押してディレクトリを All Presets にすりゃいいのか。

ん゛ー、でもやっぱり色づかい変なんじゃない?液晶パネルだからかなぁ。と思って RADEON の CATALYST Control Center を調べてもそれらしい項目は……「高解像度のディスプレイにはDVI周波数を減らす」って、ドギツイ色づかいだと関係ありそう。

高解像度で乱れたりする場合は ON にしてくれって書いてるから、別に OFF にしてもいいよな。……ってことでチェックを外した。

どうも正解だったようだ。
更新: 06/02/09,06/02/10
初公開: 2006年02月09日 21:28:19

2006-02-10 03:54:31 (JST) in ハード Windows アプリ | | コメント (0) | トラックバック (0)

2006年2月 9日 (木)

Firefox 1.5 でフォントがゴシックになっちゃった

やっぱ前のほうがイイってことで、オプションの既定のフォントを「MS P明朝」にすると……あれ?1.0.7 でゴシックで表示されてたところも明朝になってしまふ。

そこでそのとなりの「詳細設定」ボタンを押して、プロポーショナルを明朝に、ゴシック体を MS Pゴシックにしたところ、前とだいたい同じになった。

Amazon とかでフォントの斜体を使ってるページ、どうもうちの環境だとゴシックの斜体は美しくないんで、そこは明朝のほうが数倍マシだと思う。
更新: 06/02/09
初公開: 2006年02月09日 11:29:43

2006-02-09 11:29:43 (JST) in Windows アプリ Firefox | | コメント (0) | トラックバック (0)

Firefox 1.5 で Tabbrowser Extensions から Tab Mix Plus に乗り換えた

Firefox 1.5 にしてから、これまでポップアップのブロックができていたサイトでポップアップが出るようになってしまった。しかもポップアップが出たあと、タブに吸収されて、そのウィンドウがリサイズされてしまう。

症状がタブまわりなので、ひょっとしたら……と思って、Tabbrowser Extensions をはずして Tab Mix Plus を入れたところ、解決できてしまった。

これまでプラグインの管理がメンドウなんで TBE を使ってきて、今回はじめて Tab Mix Plus を使ったんだけど……これで十分っていうか、自分的にはこっちのほうがイイ。ちゃんと自分好みにカスタマイズできるし、閉じたタブの履歴もあるし。
更新: 06/02/09
初公開: 2006年02月09日 11:08:48

2006-02-09 11:08:48 (JST) in Windows アプリ Firefox | | コメント (0) | トラックバック (0)

2006年2月 8日 (水)

Firefox 1.0.7 から Firefox 1.5.0.1 にバージョンアップした

今回はほとんどメジャーバージョンアップなので、過去のプラグインがそのままでは使えないことが多いようで、install 後の起動で、ウィザードの指示に従って、そのバージョンアップを行なった。

ただし、いくつかの物については、firefox 1.5 に対応していないとのことで、自動的に無効にされてしまった。しかし、それらのほとんども手動で update してやれば問題なく動いている。

さて、それでも動作しない物が私の環境では一つだけあった。 ImageZoomer である。調べると《互換性について - Firefox更新情報 Wiki*》というところにNightly Tester Toolを使えば良いとの情報があり、実際その通りだった。

ちなみに、そこでは、Nightly Tester Tool Lite でも良いような記述に見えるが、私は Lite ではうまくいかなかった。


また、install 時は毎度のことだが、Emacs バインドを使うために、以前使っていた C:\Program Files\Mozilla Firefox\res\builtin\platformHTMLBindings.xml をキーバインドとするために C:\Program Files\Mozilla Firefox\res\forms.css の一部を以下のように書き換えている。

$ cd /cygdrive/c/Program\ Files/Mozilla\ Firefox/res/
$ diff forms.css.orig forms.css
--- forms.css.orig  2006-02-08 14:08:17.609375000 +0900
+++ forms.css   2006-02-08 14:11:06.515625000 +0900
@@ -90,7 +90,7 @@
   word-spacing: normal;
   letter-spacing: normal;
   cursor: text;
-  -moz-binding: url("chrome://global/content/platformHTMLBindings.xml#inputFields");
+  -moz-binding: url("resource://gre/res/builtin/platformHTMLBindings.xml#inputFields");
   text-indent: 0;
   -moz-user-select: text;
 }
@@ -111,7 +111,7 @@
   letter-spacing: normal;
   vertical-align: text-bottom;
   cursor: text;
-  -moz-binding: url("chrome://global/content/platformHTMLBindings.xml#textAreas");
+  -moz-binding: url("resource://gre/res/builtin/platformHTMLBindings.xml#textAreas");
   -moz-appearance: textfield;
   text-indent: 0;
   -moz-user-select: text;


ちなみに、書き換える前の platformHTMLBindings.xml は C:\Program Files\Mozilla Firefox\toolkit.jar の content/global に入っている。
更新: 06/02/08
初公開: 2006年02月08日 15:50:43

2006-02-08 15:54:16 (JST) in Windows アプリ Firefox | | コメント (0) | トラックバック (0)

2006年2月 1日 (水)

「風」の wnd ファイルを Meadow でエディットすると起動しない!

日本語 IME はいろいろあります。普通の人は「IME って何?」ってなるでしょう。トシ食ってる人なら、ATOK とかの FEP のことだよって言えばわかってくれるかな。簡単にいえば入力時にひらがなを漢字にする仕事をしてるソフトのことです。

私は、単漢字変換 IME 『』を使っています。単語の漢字をド忘れする私には、何かと不便なこともありますが、くだけた文章を書くときや英単語が頻繁にまじる文章には便利です。

さて、この『』、歴史はあるのですがユーザー数が少ないためか、今のところ完成度はやや低めです。Windows アプリでは Unicode が使えることが前提となりつつあると認識しているのですが、その点が弱いようです。変換時に常に候補の Window を表示するのですが、たまに、設定画面を出さないと候補の Window が消えないことがあります。

とはいえ、とても便利なんですよ(フォロー)

で、もう一つ Emacs/Meadow 特有の問題らしいのですが、どうも c:/WINDOWS ディレクトリにある設定ファイルをいじったあと、バックアップファイル("~" が拡張子のうしろに付いたもの)を残したままにしていると、起動しないようなのです。まぁ、c:/WINDOWS にゴミを残すほうも問題ではあるのですが……
更新: 05/05/02,06/01/31
初公開: 2006年02月01日 01:35:36

2006-02-01 01:41:35 (JST) in Emacs/Meadow Windows アプリ | | コメント (0) | トラックバック (2)

USB 機器などの「ハードウェアの安全な取り外し」をコマンドラインから呼ぶ

なぜか私のメインマシンで EPSON の USB 機器(スキャナ、プリンタ)を使うと不具合が起きます。他の組み合わせはなんともないので、完全に相性の問題なのでしょう。

その不具合ですが、認識はされ正常に動作しますが、ハードウェアの安全な取り外しにそれらの機器が出てきません。その後、コンピュータを再起動すると、「ハードウェアの安全な取り外し」アイコンがタスクバーから消えてしまいます。

電源を切ってから、起動しなおすと直っていたりいなかったり……

再現性がないので、さっぱり原因がつかめません。「ハードウェアの安全な取り外し」アイコンが消える現象自体は一般的な報告があるようで、起動時になんらかの処理に時間がかかると、シェルへのアイコンの登録が失敗することがあるそうです。

UPnP を使わないようにすると直ることがあるそうで、確かに UPnP を切ると、こころなし不具合の再現頻度が減る気がしますが、まったくなくなるわけではありません。

しかたないので、非常時のためにコマンドラインから「ハードウェアの安全な取り外し」を呼べる方法を調べました。次のようなコマンドです。

rundll32.exe shell32.dll,Control_RunDLL hotplug.dll


コマンドラインに alias で登録するなり、ショートカットの内容をこれにすれば、アイコンが消えても安心です。

でも、理由がわからないので気持ち悪いままではありますが……
更新: 05/10/27,06/01/31
初公開: 2006年02月01日 01:14:11

2006-02-01 01:14:11 (JST) in Windows アプリ | | コメント (2) | トラックバック (0)