2008年8月26日火曜日

Emacs23のフォント設定

reStructuredTextのファイルを編集するときに、日本語フォントとASCIIフォントが2:1にならないと気持ち悪いので、フォント設定を見直してみた。
こんなかんじ。

          (set-default-font "VL Gothic-12")
          (set-fontset-font (frame-parameter nil 'font)
                'japanese-jisx0208
                '("M+1VM+IPAG circle" . "unicode-bmp"))
          (set-fontset-font (frame-parameter nil 'font)
                'katakana-jisx0201
                '("M+1VM+IPAG circle" . "unicode-bmp"))
          (set-fontset-font (frame-parameter nil 'font)
                'ascii
                '("M+1VM+IPAG circle" . "unicode-bmp"))
          (set-fontset-font (frame-parameter nil 'font)
                'unicode
                '("M+1VM+IPAG circle" . "unicode-bmp"))


Emacs23 Bitstream Vera Sans Mono & M+1VM+IPAG circle
元の状態(日本語とASCIIが2:1ではない)

Emacs23 VL gothic
幅は期待した状態になったけど、日本語にAAがかからない

Emacs23 VL gothic&M+1VM+IPAG circle
日本語もAAがかかった

emacs23にした

少し前にubuntu on coLinuxのemacsをemacs-snapshot(emacs23)にした。とりあえずこんな感じになった。
emacs23 snapshot

emacsclientの--ttyを試してみた。便利な気がする。
フォントもAAが効くようになったが、それより設定が簡単になったのがうれしい。
標準のvcでbzr(hgもだけど、bzrをつかってみることにした)がサポートされているのも便利だ。

2008年8月18日月曜日

墓参り

8/16に実家に帰って、墓参りに行ってきた。雷がすごかった。
sky after thunderstorm 20080816

はじめて副都心線に乗った。渋谷の駅は新しいにおいがした。

2008年8月15日金曜日

pgrep便利

pgrepは普通に使っていたが、同じ名前のプロセスが沢山いるときに(pythonとかjavaなんかで動くやつ等)、
-f使えば全体でマッチさせられるのね。

$ pgrep -f "^/usr/local/jdk1.6.0_10/bin/java .+ /usr/local/jdk1.6.0_10/demo/jfc/SwingSet2/SwingSet2.jar"
3013



2008年8月14日木曜日

SLiRP内蔵DNSがおかしい(最近のcoLinux) - 修正されました

devel-coLinux-20080811.exeを入れたら、DNSで名前解決が出来なくなった。MLをみたら0.7.3-2からぶっ壊れてるというのがあがってた。
tftp用の対応が影響している模様。面倒なので0.7.3のzipを持ってきてcolinux-slirp-net-daemon.exeを置き換えた。


2008/08/20 追記
開発版のchangeLogをみたらr1112で修正されたようなので、devel-coLinux-20080820.exeに入れ替えました。
stableで困っていたら、SF.netの0.7.3-linux-2.6.22.18の所からcolinux-slirp-net-daemon-0.7.3-3.zipを持ってくれば直る模様。



Processing-0144 Without Javaを動かす

Processing-0152では、なにもしなくてもwithout java版が動くようになってました。
よって、以下の記述は過去のものです。


Processing-0144が出ていた
WindowsでJava無し版が動かせなかった(140あたりから同梱されているJavaを消すと動かせなくなってたいたが)ので、ソースを見たら原因が分かった。とりあえず動かせるようになった。起動時に出るエラーは以下のような文言が書いてある。

Please install JDK 1.5 or later
Processing requires a full JDK (not just a JRE) to run. Please install JDK 1.5 or later.
More information can be found in the reference.


要するに、外部JDKのtools.jarをクラスパスに入れることが出来ないのが問題。JDK1.5が入っているかチェックするところで、tools.jarに入っているクラスを使うので怒られる。

ソースを読むと、環境変数のCLASSPATHは取得はしているものの使っていない。
そうすると、環境変数のQTJAVAを使うか、args.txtしか方法がなさそう(ソースを見るまでargs.txtの存在を知らなかったが...)
まあ、外部JDKをProcessingのディレクトリにJavaと言う名前でジャンクションを作ってもよさそう。

とりあえず他への影響と間違いがなさそうな、args.txtを使うことにする。
processingのディレクトリにlibというディレクトリがあるので、そこにargs.txtを以下のような内容で作ればOK.

-Xms128m -Xmx128m
processing.app.Base
..\..\jdk1.6.0_10\lib\tools.jar,antlr.jar,core.jar,ecj.jar,jna.jar,pde.jar

1行目はjavaのオプション
2行目はメインのクラス
3行目はjarのリストで,で区切る。processingのディレクトリ\lib\各jarと言うように解釈されるので、外部JDKまでたどればいい。