2009.08.06

"Debugger() was called!" in Console

いつの頃からかは分からないけれど、console.log に "Debugger() was called!" なる文字が連続で大量に現れるようになった。こんな感じ。

Debugger() was called!
Debugger() was called!
Debugger() was called!
Debugger() was called!
Debugger() was called!
Debugger() was called!

少し観察してみると、どうも Firefox 使用中に出てくる様子。当時使っていたのは 3.5 の beta 版だったので、そういうこともあるのかなと気にしない事にしていた。

そして今日、他の事を調べていて Console.app を起動したまま Safari や Opera を使用していると "Debugger() was called!" の文字。Firefox 使用時と違って連続で表示されたりはしないが、どうも犯人は Firefox では無い様子。

ググって見ると犯人はどうやら Adobe Flash さんらしい。

確かに Flash が使われているページにいくと、この文字が現れる。どうやら Adobe が修正するのを待つしか無いようだけど、半年以上前から放置ってことは報告されてないのかなぁ。


スポンサーサイト



Posted at 19:59 | Mac | COM(3) | TB(0) |
2008.08.19

oAutoPagerize の SITEINFO を自動更新する launchd.plist

Safari 用の AutoPagerize である oAutoPagerize の SITEINFO を自動更新する launchd.plist。今の所、手動更新する必要があるので書いてみました。

先ず下記のコードをファイルに保存してください。ファイル名は拡張子が plist なら何でもいいと思います。例えば autopagerize.plist とか。次にファイルを ~/Library/LaunchAgents フォルダ(LaunchAgents フォルダが無い場合は作成)に移動して、再ログインするか Terminal から次のコマンドを実行すれば読み込まれます。

$ launchctl load ~/Library/LaunchAgents/autopagerize.plist

更新間隔は9時間に設定しています。間隔を変更するには StartInterval の値(単位:秒)を変えてから、再ログインして下さい。なお元のファイルの更新は3時間毎となっているようなので、それより短い間隔にしても意味は無いと思います。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>com.autopagerize.siteinfo.autoupdate</string>
    <key>ProgramArguments</key>
    <array>
      <string>/usr/bin/curl</string>
      <string>-sS</string>
      <string>-o</string>
      <string>Library/Application Support/GreaseKit/0autopagerizesiteinfo.user.js</string>
      <string>http://ss-o.net/userjs/0AutoPagerize.SITEINFO.user.js</string>
    </array>
    <key>StartInterval</key>
    <integer>32400</integer>
  </dict>
</plist>

Posted at 01:10 | Mac | COM(0) | TB(0) |
2008.06.23

各 Web ブラウザの歴代 Mac OS X 毎のサポート状況を調べてみた

Firefox 3 がリリースされましたが、このバージョンから必要システム要件が Mac OS X 10.4 以降になっています。これはレンダリングエンジンの Gecko 1.9 が 10.4 以降の対応になった為で、今後 Gecko を搭載しているソフトはメジャーバージョンアップによって軒並み 10.4 以降が必要になるという事になります。

Firefox に限らず、Mac OS X では Apple が OS のサポート打ち切るのが Windows と比べると早いためか、ソフトも新しいバージョンは新しい OS のみ、ってことが結構あります。Web ブラウザのようにセキュリティが重要になってくるソフトはしょうがないかと思う反面、もう少し面倒見てくれんかなと思う事も多々あったり…

そんな訳で、過去の Mac OS X もサポートされている Web ブラウザを調べてみました。なお「サポート」されている事を重要視しているので、動くバージョンがあるだけでは含めないようにしています。抜けてるソフトがあれば、コメントして頂ければ随時追記していきます。

Mac OS X 10.2

OS がリリースされたのが約6年前という事を考えると、いい方なのかな。Firefox 2 は今年末でサポートが終了しますが、SeaMonkey は 2.0(Gecko 1.9)のリリースが未定なので、もうしばらくは使えそうです。

なお Opera は「10.2でも動くと思うけど、サポート外ね」という事なので含めていません

ブラウザ最新バージョン
(20080622)
システム要件備考
Gecko 系
Firefox 22.0.0.14Mac OS X 10.2 以降2008年12月中旬でサポート終了
SeaMonkey1.1.9Mac OS X 10.2 以降
独自エンジン
iCab 33.0.5Mac OS X 10.1.5 以降既に iCab 4 に移行しているので、今後のサポートは無いかも。

Mac OS X 10.2 について

  • リリース日 - 2002年8月24日
  • 最終バージョン - 10.2.8
  • 最終セキュリティアップデート - 2005年1月25日

Mac OS X 10.3

10.3 だと Gecko 系だけでなく、WebKit 系のブラウザも使えますね。ただ 10.3の WebKit 自体が既にサポート外と思われるので、注意が必要かも。

この中で個人的に使うとするならば、Camino か Opera でしょうか。機能や速度を考えれば Opera で決まりなんですが、設定の仕方があまりにも独自なのが難点ですね。

ブラウザ最新バージョン
(20080622)
システム要件備考
Gecko 系
Firefox 22.0.0.14Mac OS X 10.2 以降2008年12月中旬でサポート終了
SeaMonkey1.1.9Mac OS X 10.2 以降
Camino1.6.1Mac OS X 10.3.9 以降Camino 2.0から10.4以降
Flock1.2.2Mac OS X 10.3.9 以降Flock 2.0 から10.4以降
WebKit 系
iCab 44.1.1 Mac OS X 10.3.9 以降
Sunrise1.7.3Mac OS X 10.3 以降
独自エンジン
Opera9.5.0 Mac OS X 10.3.9 以降
Amaya10.0.1Mac OS X 10.3 以降W3C 謹製

Mac OS X 10.3 について

  • リリース日 - 2003年10月24日
  • 最終バージョン - 10.3.9
  • 最終セキュリティアップデート - 2007年11月14日

Mac OS X 10.4

恐らくここに書いていないのでも、現状は Web ブラウザの多くが 10.4 をサポートしていると思われます。もうしばらくは好みのブラウザを色々試しながら使えそうです。

ブラウザ最新バージョン
(20080622現在)
システム要件備考
Gecko 系
Firefox 33.0Mac OS X 10.4 以降
Firefox 22.0.0.14Mac OS X 10.2 以降2008年12月中旬でサポート終了
SeaMonkey1.1.9Mac OS X 10.2 以降
Camino1.6.1Mac OS X 10.3.9 以降Camino 2.0から10.4以降
Flock1.2.2Mac OS X 10.3.9 以降Flock 2.0 から10.4以降
WebKit 系
Safari3.1.1 Mac OS X 10.4.11 以降
iCab 44.1.1 Mac OS X 10.3.9 以降
Sunrise1.7.3Mac OS X 10.3 以降
シイラ2.2Mac OS X 10.4 以降
Demeter1.0.9Mac OS X 10.4 以降シイラ 1.x 系を元にしたブラウザ
RealPlayer11Mac OS X 10.4 以降
Radon1.0Mac OS X 10.4 以降最新の1.5.1は Leopard 用のため既にサポート外かも
OmniWeb5.7Mac OS X 10.4.8 以降シェアウェア
独自エンジン
Opera9.5.0 Mac OS X 10.3.9 以降
Amaya10.0.1Mac OS X 10.3 以降W3C 謹製

Mac OS X 10.4 について

  • リリース日 - 2005年4月29日
  • 最終バージョン - 10.4.11
  • セキュリティアップデートは提供中

Posted at 01:23 | Mac | COM(0) | TB(0) |
2008.05.20

がっぺむかつく Leopard のヘルプウインドウの対処方法

最近、拡張の動作確認等で Leopard を使う事が増えてようやく気づいた事があります。

  • ヘルプのウインドウが常に最前面で表示される!

最初はバグなのか、未対応の Mac に入れてるせいなのかと思ったんですけど、どうもこういう仕様に変更になったようで。Finder でサードパーティーのコンテクストメニューが「その他」に表示されるようになったのと同じくらい、個人的には改悪です。この仕様を考えた人はヘルプ見ながら作業したりしないんだろうか。

ヘルプウインドウを背面に移動出来るようにする

080520_help1s.png
画像クリックで拡大

これは All About に記事がありすぐに変更する事ができました。Terminal で下記のコマンドを入力すれば OK です。

defaults write com.apple.helpviewer NormalWindow -bool YES

これで次からはヘルプウインドウも背面に押しやる事が出来ます。こういった隠し設定を手軽に変更出来るアプリ OnyX でも出来るかと思ったんですが、現在の version 1.9.5 では無理な様です。

普通のアプリのようにメニューやDockに表示する

080520_help2s.png
画像クリックで拡大

Tiger までのように、Help Viewer もメニューがあって起動すると Dock に表示されるようにする方法が、macosxhints で紹介されています。

上記の設定をしていれば、恐らく手順の内「Part 1: Disable background behaviour」だけで良さそうな気がするのですが、私は Leopard に開発環境をインストールしていないので全て試す事が出来ませんでした。LSUIElement の値の変更だけでも、画像のようにメニューは表示されるし Dock に表示もされるんですが、ちょっとおかしな挙動になってしまいます。

本体のファイルを書き換える事になるので、試される方はバックアップをお忘れなく。


Posted at 20:03 | Mac | COM(0) | TB(0) |
2008.03.02

polipo のディスクキャッシュサイズ

なんだか polipo という proxy server が流行っているみたいなんで、物は試しと Mac 用 GUI がついてる Dolipo を入れてみた。読み込みも速いし、Activity Monitor で見ても CPU とメモリーの使用量も少ない。良いんじゃないかと思って2日程使ってみたら、キャッシュサイズが1.5GB超えてる!

なんてこったと思い、ディスクキャッシュを制限する設定は無いかなとマニュアルを探してみたら…

The variable maxDiskCacheEntrySize specifies the maximum size, in bytes, of an instance that is stored in the on-disk cache. If set to -1 (the default), all objects are stored in the on-disk cache,

[Disk cache - The Polipo Manual]

Polipo never removes a file in its on-disk cache, except when it finds that the instance that it represents has been superseded by a newer version.

[Purging - The Polipo Manual]

maxDiskCacheEntrySize(単位は byte )でキャッシュする単一ファイルの最大サイズは指定できるようだが、デフォルトでは制限無し。しかもファイルが更新されるまでそのままという男前な仕様。

またメーリングリストを探すとこういう記述も見つかった。

> i wondered if it's possible to limit the total size of the cache on disk.

No. Polipo doesn't maintain an index of the on-disk cache

[Email Archive: polipo-users]

どうも polipo ではキャッシュのトータルサイズを一定に制限する方法はないらしい。そりゃ容量くうわけだ。恐らく動画サイトをよく見る人は、初期設定のままで使っていると非常にすてきな事になると思われる。

ただ polipo のキャッシュを削除する方法も一応あるらしい。

polipo -x
polipo に -x オプションを付けて実行すると、アクセスされていないファイルを削除したり、でっかいファイルを truncate(いまいち意味が分からない)出来る。
$ killall -USR1 polipo
$ sleep 1
$ polipo -x
$ killall -USR2 polipo
     
なお「アクセスされていない」の期間だが32日(dolipo では7日)と長めに設定されている。diskCacheUnlinkTime で変更可能。
polipo-trimcache スクリプト
キャッシュを指定サイズ以下にしてくれる python スクリプト。
$ polipo_trimcache-0.2.py /path/to/cache/polipo 500M
こんな感じで引数にキャッシュディレクトリとサイズを指定して実行する。cron か OS X 10.4 以降なら launchd で定期的に回すのが現実的な方法だろうか。ただしそんなに速くない。
Disk quota
polipo を特定のユーザ、例えば polipo とかで実行して、そのユーザに disk quota で制限しとくという方法。OS X で disk quota をかけられるのかどうかは知らない。

うーん、どれもかったるい。設定で「キャッシュは1GB 以下ね、それ以上になったら適当に削除しといてね!」とか出来れば良いんだが。

<追記>
dolipo 1.0.7polipo_trimcache を起動時と24時間毎に実行する機能と、キャッシュするファイルの上限(maxDiskCacheEntrySize なのかな?)を設定できるようになっています。これでディスク容量に関してはそんなに心配しなくていいかも。
</追記>

まとめ

  • polipo はキャッシュを削除しない。
  • キャッシュを削除するときは polipo -x を実行
    • diskCacheUnlinkTime を小さい値にすると多分沢山削除される。
  • デフォルトではどんなでっかいファイルもキャッシュする
    • maxDiskCacheEntrySize でキャッシュするファイルサイズの上限を指定可能
    • ただし maxDiskCacheEntrySize を超えるようなストリーミング動画等で途中から再生されなくなる場合があるかも
  • 設定の変更は Polipo configuration から
  • とりあえず polipo-trimcache を定期的に実行しとくと吉

Posted at 23:04 | Mac | COM(0) | TB(0) |