2008年8月20日水曜日

(FreeBSD) WineでFirefox2を実行してみたら、トウフが表示された

Wineは、Windows用ソフトウェアを、Unix系OSで実行できるようにしてしまう、ある意味、ものすげぇツールです。



私は、FreeBSD 2.2.xくらい、Windows 95くらいの時代に、電卓とかフリーセルとかが動いたのを見て、たしかにすげぇけど、実用的じゃねぇなぁ、くらいに思って、その後はすっかり興味を失ってました。



あれから10年以上が経過。最近になって、今のWineの完成度はすごいという話を聞きました。



が、しかし、10年前と比べて、パソコンの値段は安くなったし、処理速度もネットワークの通信速度も格段に高速になっているので、たとえば、本物のWindowsパソコンを、リモートデスクトップ接続で使うとか(ports/net/rdesktopは素晴らしい!)、エミュレータでWindowsを動かすとか、それでいいんぢゃね?と思ってたのでした。



しかし、なんとなく気まぐれで

http://gihyo.jp/admin/clip/01/fdt/200808/07
FreeBSD Daily Topics
2008年8月7日 【TIPS】FreeBSD Firefox 3とFirefox/Wine Flash9閲覧をシームレスに実現する方法

を見て、とりあえず試しておくか、くらいのつもりで、Wineを使って、Windows版のFirefox2を実行してみました。



なんかぁ

ごく普通に、当たり前のように動いてる

何も難しいところもなく、あっさりと動いてしまったので、なんかぁ、逆におもしろみがないというか…。



でもまあ、Firefoxって、Windows用とかLinux用とかMacOS用とかいろいろな環境にポーティングされているんで、きっと、プラットフォーム依存な部分を極力無くすとか工夫してるだろうし、そのために、できるだけ多くの処理を、OSまかせではなく自前でやる、とかなってそうな気もします。だとすると、Wineで動くのも実はたいして難しいことはないのでは…?と思ったんですが、WineでFirefox3は、まだ実行できないそうなんですね。ふむ。





いや、実際のところ、私の環境では、そう簡単には使い物になりませんでした。



その理由は、私がウィンドウマネージャに、fvwm-1.24rなんていう古いものを使っていたためらしいです。fvwm-1.24rだと、どういうわけか、WineなFirefoxのウィンドウが、画面の端にへばりついてしまって、ウィンドウを移動できなかったり、ウィンドウサイズも変更できなかったり、どうもおかしいんです。



winecfgで、ウィンドウマネージャの管理外にできたり、へばりついてる側のウィンドウ枠をドラッグするころで、ウィンドウサイズを変更でき、実質的にウィンドウも場所を動かせることを発見しました。



これでいいかと思ったのですが、



  • キーボードの操作で、ウィンドウのフォーカスを変更できない


  • WineなFirefoxのウィンドウのタイトルバーなどをマウスでクリックするたびに、ズル、ズル、ズル、ズル、と、WineなFirefoxのウィンドウが動いていってしまう


という感じで、だめだこりゃ…でした。



ただ、ひとつよかったのは、なぜか、WineなFirefox2は、すごくスイスイと軽快に動いて、FreeBSDのFirefox2よりも、レスポンスがよかったんです。これは、もしかして使い物になるかも?という気がしてきて、

10数年の時を経て、ついにウインドウマネージャを変えました。gnome2に。

うぉ~、動きが、もっさりしてるぞ~!



fvwm-1.24rを使い続けてきたのは、とにかくキビキビ動くのが絶対条件だったから。ちなみに、その前は、Motifのmwmを使ってました。mwmを使いはじめたきっかけは、実はWindowsにありました。Windows 3.0をしばらく使う機会がありまして、すでにMacintoshになじんでいたころだったのですが、Windowsを触ってみて一番驚いたことが、

GUIなウィンドウ環境なのに、マウスがなくても、キーボードですべて操作できる!

でした。しかも、それがけっこう便利なんです。つまり、マウスって意外と不便な道具なんですよね。キーボードのAlt+Tabでウィンドウのフォーカスを変更できる(タスクスイッチできる)のが特に便利で、X Window Systemでも、それができるmwmを使うようになったのでした。ちなみに、その前はtwm。さらに余談ですがuwmも少しだけ使ったことがありますよ。



mwmは、動きがもっさりしてて、嫌だなと思ってたころに出会ったのが、fvwm。それ以来、ず~っと、fvwmと一緒でした。



「ソフトウェアは反応速度が命」と思うようになったのは、vz editorとの出会いがきっかけかもしれません。そのわりには、emacs派ですけど(矛盾だらけだ)。





ああ、もういきなり嫌になってきました、gnome2。
でも、まあ、WineなFirefox2のために少しは我慢。よく知りませんが、なんか軽量なやつがあるそうですが…、ま、それはまたいつか試してみます。





さてさて、いろいろアドオンをインストールして、FreeBSDなFirefox2と同じように使えるようにしてみました。



そしたら・・・

WineなFirefox2も、もっさりと、遅くなりました

なんだぁ、FreeBSD版のFirefox2が遅かったのは、アドオンのせいだったのか…





とりあえず、乗りかけた船なので、まだ、WineなFirefox2を使ってみています。ひとつ気になったのが、ハイフンが文字化けして、「トウフ」、□という記号が表示されてるんです。



たとえば
http://jp.php.net/manual/ja/reserved.variables.server.php
を表示してみたところ



200808191


ソースを見ると



<p class="refpurpose"><span class="refname">$_SERVER</span> -- <span class="refname">$HTTP_SERVER_VA<wbr>RS [非推奨]</span> ― <span class="dc-title">サーバ情報および実行時の環境情<wbr>報</span></p>



みたいに書かれていて、



ためしに、Firefox2の「表示」メニューの「スタイルシート」にて「スタイルシートを使用しない」にすると、「-」で表示されるので、スタイルシートに何か原因があるらしいです。



どうやって上のHTMLソースの部分に適用されているスタイルシートの定義を探すのか、方法がよくわかんなかったのですが、とりあえず泥臭い方法ですが、スタイルシートのファイルを眺めていたら



  @import url("/styles/site.css");
  @import url("/styles/mirror.css");



と書いてあって、site.cssを見ると、



body, input, textarea, select, option {
    font-family: verdana, arial, helvetica, sans-serif;
}



と書いてあったんで、この辺のフォントを使うと、文字化けするんじゃないのかな、という予想できます。



ネット検索してみたら



FreeBSD + Wine で Flash9 を使う
http://www.daemonfreaks.com/blog/tags/Wine



という情報を見つけまして、~/.wine/system.reg というファイルの



[Software\\Microsoft\\Windows NT\\CurrentVersion\\FontSubstitutes]



の部分に、とりあえず



"Verdana"="IPAPGothic"
"Arial"="IPAPGothic"



を書き足してみました。VerdanaとArialにしたのは、一応、スタイルシートにそう書いてあったから、というだけで、正しいのかどうか、まったくわかりません。



ところで、system.regは、wineが動いているときに書き換えてもだめで、wineなプログラムをすべて終了させてから、書き換えないとダメでした(さもありなん、ではありますが)。



最初、Firefox2を終了させてから、system.regを書き換えたんですが、反映されないみたいで、なぜかな?と思っていたら、WineなMozilla Sunbirdも実行中でした。全部終了させないとダメなんですね。



とりあえず、代替フォントの指定(?)を追加したら、トウフは表示されなくなり、ハイフンが表示されるようになりました。



200808192




正しい文字を表示できないので、意図的に文字化けを起こすとき使われる記号として、トウフの“□”のほかに、ゲタ“〓”があります。このゲタは、大昔、活字を用いた印刷方式の場合で、活字が足りなくなったときに、とりあえず代わりに入れておいたのが〓という文字だったのが起源。
〓という活字があるのではなくて、単に、どんな活字でも、逆向きに入れると、〓と印字されるだけ…なんだとか。



0 件のコメント:

コメントを投稿