google-code-prettify

2007-03-29

Easy PageUp - FirefoxでPageDown/Upを便利にするscript

ブラウザでページの終わりの方を見ている時に、PageDownを押すと、半端なページ分スクロールして、どこまで読んでいたのかがわからなくなる時がある。

そこで、ちょっと前までどこを読んでいたのかがわかるような線を引いてくれるgreasemonkyのscriptを作った。

Easy PageUp

ページの終わりの方で、


PageDownを押すと、



こうなる。

2007-03-28

puffs+refuse+curlftpfsで、FTPホストをfilesystemにマウント

まず用語の説明。
puffsとは、linuxにおけるFUSEのような物。NetBSDのユーザー空間でfilesystemを実現する機能。
refuseとは、LinuxのFUSE用に書かれたfilesystemをpuffs上で使えるようにするラッパー。

puffsとrefuseを使うには、このへんに書かれている事を行う。

curlftpfsは、pkgsrc/filesystem/fuse-curlftpfsにあるのでインストールする。

あとは、
# /usr/pkg/bin/curlftpfs user:pass@hostname /mnt
とすれば、/mntにFTPホストがマウントされる。

2007-03-24

firefoxの動作をちょっと速くする方法

MOZ_DISABLE_PANGO=1 firefox &
としてfirefoxを起動すると、firefoxの動作がちょっと速くなるらしい。
そう言われると、そんな気もする。うちのPCは非力だし。
via hubertf's NetBSD blog

2007-03-22

debianのARM portでは、EABIを使うと浮動小数点演算が速くなる(かも)

debianのARM EABI portの方が、EABIじゃないportより浮動小数点演算が速い(ことがある)。
なぜかと言うと、EABI以前では、
・浮動小数点演算を行う場合、FPU命令コードを入れていた。
・FPUを持っていないCPUの場合、例外が発生する
・例外で、ソフトウェア的に浮動小数点演算を行っていた。

EABIの場合は、ソフトウェアで浮動小数点演算を行ったり、FPUを使って計算したりを、動的に変える事ができるそうな。

参考:
ArmEabiPort
Why ARM's EABI matters

2007-03-15

subversionで、commitしたファイルでコミットメールの宛先を変える

Subversionで1つのリポジトリを複数のプロジェクトで使っている場合、見たくもない別プロジェクトのcommitメールが来てしまう事がある。

そこで、commitしたファイルによってcommitメールの宛先を変える事ができるpost-commitスクリプトを作った。

使い方
・リポジトリのrootに、conf.txtという名のファイルを作る(commitしておく)。
・conf.txtには、正規表現とメールアドレスをスペース区切りで書く。

conf.txtの例
.* all@example.com
trunk bob@example.com peter@example.com
crypto alice@example.com bob@exampel.com lupin3@example.com

ちなみに、以前はrubyで作ったが、今回はpythonで作り直した。
ちなみに、rubyバージョンのpost-commitが欲しい人は、こちらの方がデキが良いので、そっちを使いましょう。

2007-03-13

NetBSD-currentでnspluginwrapper動作せず

今までLinuxエミュレーションのfirefox-binを使っていたが、思う所があって、nativeなfirefox2+nspluginwrapperにする事にした。

ところが、pthreadまわり(_lwp_park)でSIGSEGVしてfirefoxが落ちる。
nspluginwrapperのplugin側とviewer側の間の通信は正しくできているっぽい。
newlock2のマージがあったので、まだthreadを使うアプリは正しく動作しないのだろうか。

やった事
1. nspluginwrapperのインストール
・src/npw-wrapper.cに、include <signal.h>を追加しておく
・$ ./configure
・$ gmake
・$ sudo gmake install

2. npviewerのインストール
npviewerはLinuxのバイナリを使う必要がある。
・npviewerのrpm(x86_64用)を持ってくる。
・$ rpm2cpio xxx.rpm > a.cpio
・$ cpio -i < a.cpio
展開した物は、/usr/lib/nspluginwrapper/i386/linux/に置く。


07/03/29 追記:
port-i386のメールによると、NetBSD i386 4.99.16だったり、gtk1だったりすると動作しないらしい。
うちの環境は、4.99.16でfirefox2-gtk1。ダメじゃん。

2007-03-01

Subversion以外のVCSでsvn_load_dirsのような事をする

vcs-load-dirs
darcs, git, mercurial, svkなどで、svn_load_dirs.plのような事をするためのプログラム。

via mercurial ML

firefoxのプラグインを別プロセスで実行する

nspluginwrapper
firefoxのプラグイン(NPAPI)のラッパー。
これを使うと、以下のメリットがあるらしい。
  • Flashなどのプラグインを、NetBSDネイティブのfirefoxで実行できる。
  • プラグインは別プロセスで実行されるので、プラグインが落ちてもブラウザは落ちない

via netbsd-users

pythonで文字列のエンコーディングを推測する

mozillaの文字列推測のコードをpythonに移植した物。
Universal encoding detector

via python ML