zt日記

書いているのは Kazuhiro NISHIYAMA a.k.a. ZnZです。
2001|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|
2012|04|05|06|09|

この日記にはツッコミを入れられます。 ツッコミを入れたい日付をクリックすると、フォームが現れます。

xreaでtDiaryを使う方法はxrea.com で tDiary を使う方法インストールメモXREA + tDiary + Namazuをどうぞ。


2005年02月01日(Tue)

[Windows] 窓の杜 - 【NEWS】マイクロソフト、“GDI+”脆弱性を修正した「PowerPoint Viewer 2003」を公開

いつの間にかさらにバージョン3まであがっていたらしい。脆弱性を修正したバージョンにはかなり前から差し替えられていたはずだけど、今頃ニュースになっているということは他のバグも直しておすすめできるバージョンになったということなのかもしれない。

[zsh] killコマンドでpidやコマンド名の補完

コマンド名でも補完できるというのは知らなかった。

killの補完で出てくるのがpsの結果で、killしたいプロセスは他のシェル上から起動していたり、デーモンになっていたりしてpsの結果には出てこなくて不便だと思っていたのはどうにかならないかと思って、調べてみたらzstyle ':completion:*:processes' command 'ps x'のように設定すれば良いとわかった。

色を付けるのはsetopt extendedglobが必要で、普段はextendglobにしていないので、必要なときだけオンに出来ないかと思って調べてみたのは結局どうすればいいのかわからなかった。


2005年02月05日(Sat)

[ruby] xbel.rb

こんなのを作ってみた。infoとmetadataの部分をどうすればいいのかいまいち良い案がない。


2005年02月08日(Tue)

[mozilla][thunderbird][enigmail] enigmailで検証に失敗

sylpheed, wanderlust, mew, GNU Privacy Guard Plug-in for Becky! 2などではちゃんと検証できる署名がenigmailだけ失敗してしまうので原因を調べてみたところ、「PGP相互検証MLのサンプルメールを用いてテストしたところによると、1) 一部のMUAから、2) PGP/MIME形式で、3) 行末に空白(スペース)が入ったメッセージを受け取った場合に、署名の検証が失敗するようです。」という情報を見つけた。

enigmailを試してみるためだけにMozilla Thunderbirdを入れてみたけど、Thunderbirdはやっぱり使えないと言う結論に。

[ruby] TAGS

rtagsがirb-tools.rd.jaに説明だけはあるのに本体がないので、IRCできいてみたら、Exuberant CtagsがRubyにも対応していると教えてもらったので、aptitude install exuberant-ctagsして、ctags -e --recurse --verboseとしてTAGSファイルを作って解決した。


2005年02月10日(Thu)

[security] ウイルス定義ファイルに注意--シマンテック製品にウイルス感染を招く脆弱性 - CNET Japan

AVG Free Editionを入れているので、期限切れになった後も放置していたままになっていたNorton AntiVirusを削除することにした。


2005年02月13日(Sun)

[ruby][dRuby] drbの危険性

drbは任意のコードが実行できてしまう可能性が非常に高いので、誰でもアクセスできる状態にしない方が良い。

DRb & instance_evalではundefしているが、ro.method_missing(:instance_eval, "puts 'hello'")のように直接method_missingを呼んでしまえばリモートのメソッドをすぐに呼び出して試すことが出来る。


2005年02月15日(Tue)

[ruby] Rubyist Magazine 0005号

リリースされたようです。


2005年02月18日(Fri)

[JR] Re: JR 西日本不乗運動

孫引用ですが、「煙が好きでない人は、喫煙場所の近くに寄らなければ、それほど影響を受けないのではないか」ですか。ホームの途中に喫煙場所があって、前の方に乗りたいときはそこを通らないといけなかったり、喫煙場所をさけて乗っても途中の停車駅で喫煙所の前になってしまったりして喫煙場所の近くに寄らないということが非常に困難と言うことがわかっていないような。

駅の中では運良くさけられたとしても、駅から出たら歩きたばこの人がいたりとかということもよくあったし。今は帰省とかの長距離の移動の時しか使わないけど。


2005年02月19日(Sat)

[net][bloglines] System Upgrades This Evening

As Bloglines continues to grow, we are constantly adding capacity to the system. The Bloglines site will be unavailable for one hour starting at 7pm Pacific Time this evening, while we upgrade the system. We thank you for your understanding. Fri, 18 Feb 2004 10:00:00 PST

ruby -r time -e 'p Time.parse("Fri, 18 Feb 2004 19:00:00 PST")'Thu Feb 19 12:00:00 GMT+9:00 2004となったので日本時間の正午らしい。


2005年02月20日(Sun)

[ruby] [ruby-dev:25729] Re: named capture

「かずひろ」つながりでなのかどうかはわかりませんが名前を間違えられてしまっているようですが、そもそもMatchData#[]SymbolStringを、という話も以前にIRCで取り出し方がないのかきいてみたときにnokadaさんか誰かがこういう方法で取り出せるんじゃないかと言ったけど結局出来なかったというのを覚えていただけで私のオリジナルの案ではないという話もあったりします。

[regex] named captureとは?

Oniguruma鬼車 正規表現をみればわかる...人にしかわからないような気がするので、説明してみると/<(?<tag>[A-Za-z]+).*?>.*?<\/\k<tag>>/ =~ '<code>hoge</code>'のように\1などの代わりに使って、captureする括弧の数が変わっても数字を変えなくていいので便利というものです。

そして、その後にある部分式呼出しというのは/(?<capitalized>[A-Z][a-z]*) (?<lower>[a-z]+) \g<capitalized> \g<lower>,/ =~ 'Just another Ruby hacker,'のように\g<name>の位置でマッチする内容が(?<name>...)でマッチする内容と違っていてもいいときに使います。


2005年02月21日(Mon)

[subversion][svk] svk使い始め

svkを使ってみた。svn管理されているソフトの最新版を追いかけつつ、ローカルでパッチをあてて使う場合には便利かも知れない。使い始めはこんな感じらしい。
% svk depotmap --init
Repository /home/kazu/.svk/local does not exist, create? (y/n)y
% svk mirror svn://sylpheed.good-day.net/sylpheed/trunk //sylpheed/trunk
Committed revision 1.
% svn log -r HEAD svn://sylpheed.good-day.net/sylpheed/trunk
------------------------------------------------------------------------
r118 | hiro | 2005-02-21 18:09:16 +0900 (Mon, 21 Feb 2005) | 1 line
 
compose.c: improved auto-wrapping.
------------------------------------------------------------------------
% svk sync -s HEAD //sylpheed/trunk
Syncing svn://sylpheed.good-day.net/sylpheed/trunk
Retrieving log information from 118 to 118
Committed revision 2 from revision 118.
% svk copy -m 'local branch for sylpheed' //sylpheed/trunk //sylpheed/local
Committed revision 3.
% cd ~/wc
% svk co //sylpheed/local sylpheed-trunk
Syncing //sylpheed/local(/sylpheed/local) in /home/kazu/wc/sylpheed-trunk to 3.
A   sylpheed-trunk/config.rpath
A   sylpheed-trunk/ChangeLog-1.0
A   sylpheed-trunk/AUTHORS
A   sylpheed-trunk/src
(中略)
A   sylpheed-trunk/manual/ja/Makefile.am
A   sylpheed-trunk/manual/ja/sylpheed-1.html
A   sylpheed-trunk/manual/ja/sylpheed.sgml
A   sylpheed-trunk/install-sh
 U  sylpheed-trunk
% cd sylpheed-trunk
% grep -v configure autogen.sh | sh -x
+ aclocal -I ac
+ libtoolize --force --copy
+ autoheader
configure.in:50: warning: AC_PROG_LEX invoked multiple times
autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
aclocal.m4:1134: AM_PROG_LEX is expanded from...
configure.in:50: the top level
+ automake --add-missing --foreign --copy
+ autoconf
configure.in:50: warning: AC_PROG_LEX invoked multiple times
autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
aclocal.m4:1134: AM_PROG_LEX is expanded from...
configure.in:50: the top level
% mkdir -p ~/build/sylpheed-trunk
% cd ~/build/sylpheed-trunk
% ~/wc/sylpheed-trunk/configure --prefix=$HOME/opt/$(basename $(pwd)) \
  --program-suffix=-trunk --enable-gpgme --enable-jpilot \
  --enable-ldap --enable-ssl
(略)
sylpheed 1.9.2+svn
 
image support : yes
GnuPG         : yes
JPilot        : yes
LDAP          : yes
OpenSSL       : yes
iconv         : yes
compface      : yes
IPv6          : yes
 
The binary will be installed in /home/kazu/opt/sylpheed-trunk/bin
 
Configure finished, type 'make' to build.
% make
(略)
% make install
(略)
% ~/opt/sylpheed-trunk/bin/sylpheed-trunk&
%

2005年02月23日(Wed)

[ruby] --enable-pthread

「--enable-pthread を使っても複数 CPU にスレッドを分散されません。--enable-pthread は Tk などのライブラリの都合で pthread をリンクしなければならない場合に、最低限困らないようにするためのものです。」というのはRubyリファレンスマニュアルにconfigureの引数を説明するページがあれば書いてあると良さそうと思ったけどなかった。


2005年02月25日(Fri)

[Linux][zlib] inflate

gzipファイルの内容をそのまま渡すと、incorrect header checkになってしまって悩んでいたが、zlib.hのinflateInit2の説明を良く読むとwindowBitsに32を足しておけばzlibとgzipのヘッダを自動検出してくれるとわかったのでそれで解決した。

[debian][Linux] 一太郎 for Linux

一太郎 for Linux & ATOKを参考にして入れてみた。e2jがSEGVしてるみたいだけど本当はどうなるべきなんだろう。
/cdrom/bin# ./setuptaro
/cdrom/bin/TARO14/setup: line 153:  2085 Done                    echo "お客様は、本製品のご使用に際して、本ソフトウェアとともに別途弊社が提示する"
      2086 セグメンテーション違反です  | "$e2j"
/cdrom/bin/TARO14/setup: line 153:  2087 Done                    echo "使用許諾契約書にご同意いただく必要があります。"
      2088 セグメンテーション違反です  | "$e2j"
/cdrom/bin/TARO14/setup: line 153:  2089 Done                    echo -n "同意する(y)/同意しない(n) "
      2090 セグメンテーション違反です  | "$e2j"
y
一太郎 for Linux の 動作環境のインストールが終了しました。
/cdrom/bin/TARO14/setup: line 319:  2411 Done                    echo "#@ $k_mime/$name"
      2412 セグメンテーション違反です  | "$e2j" >>"$uninstaller"
/cdrom/bin/TARO14/setup: line 319:  2415 Done                    echo "#@ $k_mime/$name"
      2416 セグメンテーション違反です  | "$e2j" >>"$uninstaller"
/cdrom/bin/TARO14/setup: line 319:  2419 Done                    echo "#@ $k_mime/$name"
      2420 セグメンテーション違反です  | "$e2j" >>"$uninstaller"
/cdrom/bin/TARO14/setup: line 319:  2423 Done                    echo "#@ $k_mime/$name"
      2424 セグメンテーション違反です  | "$e2j" >>"$uninstaller"
/cdrom/bin#

[debian][Linux] ATOK for Linux

ATOKの方はdeb http://ftp.arege.jp/debian-arege sarge atokx2のatokx2パッケージを入れて、.xsessionで以下のように設定しておいたら、一太郎では問題なく入力が出来た。geditはxim経由にしないと入力できないと思ったら、iiimgcfパッケージも入れないとだめだったらしい。ATOK(というよりIIIMF?)のオン・オフはCtrl+Spaceだったらしい。
/opt/atokx2/bin/atokx2_client.sh
export XMODIFIERS="@im=htt"
export GTK_IM_MODULE=iiim

copyright © 2001-2013 ZnZ
Key fingerprint = 6E14 2C9C DBD7 874D 8B3C CAA8 9B58 5538 ED7E 1B73