200305月の雑感

更新日:2003-05-31
[トップページへ] [4月] [6月] [過去の雑感へ]

5月31日()

 XKeymacs と Excel

ちょっと戸惑ってしまったExcelでのXKeymacsですが、 Ctrl + nや Ctrl + p などでセルを移動できるのは、なかなか快適です。

 『捕虜収容所の死』(マイケル・ギルバート)

読了。

捕虜収容所が、もっと窮屈な環境であるというイメージが頭にあったため、 話の出だしについていけず、戸惑いました。 自分が持っていたイメージよりもっと自由がある環境のように思えました。 そのためでしょうか。 本の帯には「スリル横溢」とありますが、さほど「スリル」を感じることはできませんでした。 現代の作品に比べると大人しいように思います。

ですが、本格ミステリとしては、 真相に辿りつくための伏線の張り方が実にいいです。 しかも、見た目通りの伏線ではなくて、180度引っくり返された真相のための伏線として活かされます。 これらの伏線がぴったりとはまる終盤の謎解きは鮮やかです。

 Vim

バージョンが、

version 6.2f.29 BETA

となってます。 今度こそ本当のベータバージョンですね。


5月30日(金)

 30分遅れ

出張からの帰り、駅まで後一つというところで、電車が停まってしまいました。 事故があったみたいです。 30分遅れたので、家に着いたのは、明日です。


5月28日(水)

 第三の目

「プログラマの第三の目」って何でしょう。 常日頃、私は、vi(m) や Emacs などを使ってはいますが、「第三の目」は開いてません。

JAVA PRESS vol.29 P.15 より。


5月25日()

 Java: scope

jsp のファイルで

<jsp:useBean id="obj" scope="session" class="MyClass"/>

として、Servletのファイルで

myobj = new MyClass();
request.setAttribute("obj", myobj);

としてました。 どうしてもMyClassのフィールドの値をjsp側で取り出せず、しばらく悩んでしまいました。

正解は

<jsp:useBean id="obj" scope="request" class="MyClass"/>

です。

 Java: 家でもサーブレット

EclipseTomcatSysdeo Eclipse Tomcat Launcher pluginSolarEclipse からなる環境を作りました。 作るだけで力尽きちゃいました。

Lombozも試してみたいところなんですが、それは、また、いつか...。


5月24日()

 鶏口

ずーっと鷄頭だと思い込んでました。 (みかままさんの覚え書きから。)

 第5版

うささんの丁稚な日々経由で 「Advanced Windows」のページを見たら 「合わせて買いたい」の本が 「プログラミングWindows第5版〈下〉」 でした。 いつの間にか第5版で、しかも上下巻に別れてたんですねえ。 何となく感慨深いです。 私がPetzold本を読んだのは、Windows 3.1の頃でした。

 『イエスのビデオ』(アンドレアス・エシュバッハ)

読了。

2000年前の遺跡から発掘された人骨には、現代医学の治療後があり、 一緒に発見されたのは、3年後に発売されるはずのビデオカメラの説明書。

という一種のタイムトラベルSF物かと思わせるような出だしなのですが、それは出だしだけです。 そこから先は普通の冒険小説の展開です。 イエス・キリストを映したビデオを巡る争奪戦が繰り広げられます。

この争奪戦が、結構面白かったのですが、 追っ手を逃れて砂漠をさまようあたりから、盛り上がりに欠ける展開で、ちょっと残念。

 本日買った本

 OpenOffice.org 1.1 beta2

インストールしました。 おおっ。なかなかいい感じです。


5月23日(金)

 IDE

基本的に生産性を上げてくれるありがたいツールだと思ってます。 ですが、しょっちゅうハングアップし、しかも再起動に時間がかかるとあっては、 生産効率は下がり、こちらのやる気もじわじわと、はぎ取ってくれます。


5月22日(木)

 Java: PropertyResourceBundle

SJISとかをそのまま扱えないのですね。

Unicode escapes じゃなくても、SJISなどの文字コードを直接扱える代用できるクラスがあるというのを どっかで読んだというかすかな記憶が頭にあるような気がするのですが、 気のせい???


5月18日()

 社会思想社

雑誌を読んで知りましたが、社会思想社って倒産してしまったのですか。 ちょっとショックです。 現代教養文庫のミステリ・ボックスシリーズは、結構好きだったんですけどね。

そうか。それで、光文社文庫から、エリス・ピーターズの修道士カドフェルシリーズが出てるのか。

 初めてのミステリ

どうでもいいことなのですが、初めて読んだミステリは、小学生向けのアンソロジーだったように思います。 多分5つの短編が収録されていたと思います。

あと1つがどうしても思い出せません。


5月17日()

 ruby-win32 ML

subscribe しました。

 Win32OLE(Ruby): to_s method

Ruby 1.8 標準添付のWin32OLEの WIN32OLE_TYPE, WIN32OLE_VARIABLE, WIN32OLE_METHOD, WIN32OLE_PARAM に to_s メソッドを追加しました。

 本日買った本

ここのところ、国内ミステリばかり読んでいたので、海外ミステリを買ってみました。


5月16日(金)

 Win32OLE(Ruby): ie.Documentの謎

[ruby-talk:70945]の件について調査しました。

問題のスクリプトは、

ie.Navigate("http://www.ruby-lang.org")

ie.gohome

に変更するとちゃんと動きます。

うーむ。Win32OLEは悪くない。きっとRubyのホームページに問題があるに違いない... というのは冗談です。

Internet Explorer がページをちゃんと表示した状態でないと、 ie.Document が method missing になるのではないかと予想しました。 そこで、試しに、rescue して、retryさせてみることにしました。

require 'win32ole'

ie = WIN32OLE.new('InternetExplorer.Application')
ie.visible = true

doc = nil
i = 0
times = 5
begin
  doc = ie.Document
  i = i + 1
rescue
  retry if doc == nil && i < times
end
puts doc.url
puts doc.charset

retry の回数を5回に制限したのには、何の根拠もありません。 制限しておかないと、無限ループに陥る恐れがあるためです。

これで、ie.Documentがmethod missingになることは無くなりました。 しかし、タイミングによって微妙に結果が異なります。 私の環境では

http://www.ruby-lang.org/ja/
euc-jp

となったり、

http://www.ruby-lang.org/
_autodetect

となったりするのです。

IEがちゃんとページを表示し終わるまで待てばいいかと思い、出した答が[ruby-talk:71620]でした。

それにしても、2番目の質問に英語で答えるのは難しいです。 嘘です。日本語でも、やっぱり説明するのは難しいです。

今気づきましたが、ループの中で代入しなくても、

while $navigating
end
doc = ie.Document

で良かったんじゃないかと思います。(←未確認です)

 WIN32OLE_METHOD

さて、[ruby-talk:71620]で3番目の質問の回答を

puts ie.ole_methods.collect{|m| m.name}

と書きました。 いつも、これが面倒くさいと思ってしまいます。

puts ie.ole_methods

p ie.ole_methods

と書きたいです。(←正確には書けます。全然嬉しくない結果が得られるだけです。)

そこで、to_strとto_sの違いが何だったか調べました。 [ruby-dev:18648]に解説があります。 to_sを実装しましょう。

 『凶笑面』(北森鴻)

読了。

異端の民族学者、蓮丈那智が活躍する民俗学を絡めた本格ミステリーの短編集。 シリーズ異色作ながら、妙な緊張感のあった「双子神」が好み。 他の話は、わりと、淡々とした感じで展開しますが、この一遍だけが違うのです。 割とサスペンスがかった展開で、背後に巨大な組織が見え隠れします。 そこが妙に面白かったです。

『メインディッシュ』や、『花の下にて春死なむ』に比べるとちょっと物足りないです。

高木彬光の『成吉思汗の秘密』など、歴史ミステリが好きな人は楽しめるかも知れません。


5月15日(木)

 Java: 標準出力の差し替え

IDEを使っているとSystem.outを使った出力がIDE内のコンソール画面に出力されます。 これは、きっと標準出力を変更できるに違いないと思いました。 調べてみたら、ちゃんとありました。

System.setOut(PrintStream out)

がそれです。標準エラー出力、標準入力も変更できます。

System.setErr(PrintStream err)
System.setIn(InputStream in)

PrintStrem(の派生クラス)のオブジェクトを引数にして、System.setOutを呼び出せば、それ以降は System.out.printlnなどの出力をファイル出力に切り替えることも可能です。

import java.io.PrintStream;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;

class TestSystemOut {
    public static void main(String args[]) {
        System.out.println("ここまでは、標準出力");
        try {
            PrintStream out = new PrintStream( new FileOutputStream("stdout.txt"), true);
            System.setOut(out);
            System.out.println("ここからは、stdout.txt に出力");
        } catch (FileNotFoundException e) {
            System.err.println("ファイル出力失敗");
        }
    }
}

今回の用途(←詳しいことは秘密)には向かないという結論に達したので、この方法は採用しませんでした。


5月14日(水)

 Windows: Windows環境で欠かせないツールその2

XKeymacsChange Keysを比較してみました。

Change Keysは、非常駐型のソフトで、レジストリを書き替えることで、キーの配置を変換できます。 それ以上のことはできません。

XKeymacsも同じ機能を持っています。 更に、常駐させることにより、メモ帳などのソフトでも、Emacsライクな操作が可能になります。

メモ帳以外のExcelや、Explorerでも同様のキー操作になってしまい、 Ctrl + C(Copy) Ctrl+v(Paste)などが、Esc-w, Ctrl+y となります。 最初、妙に違和感があって戸惑ってしまいました。

ソフトウェアごと(?)にXKeymacsの機能を有効にしたり無効にしたりできるので、 この辺を細かく設定すれば、私にとって違和感の無い快適な環境になるのではと思います。

ということで、XKeymacsを採用することにしました。

ただ、skkimeと 組み合わせると何か変な動きになるような気がします。


5月11日()

 Vim

バージョンが 6.2a から 6.2b と進んだので、てっきりαバージョン、βバージョンのことだと思ってました。 今日、コンパイルしてみたら、6.2c となってました。 単純に、a, b, c, ... と増やしているだけ?

Vim で、ディレクトリを開くと、ファイルのリストが表示されます。 こんな機能があったなんて今まで知りませんでした。

 Windows 環境で欠かせないツール

会社で使っている私のPCがもうすぐ新しくなります。 今のPCには、個人にとって便利なツールが入っているのですが、それを移行しなくてはなりません。 いい機会なので、今のうちに整理しておくことにしました。

こうして見ると、UNIXを知らないWindowsのユーザーには勧めづらいソフトが多いことに気づかされます。


5月10日()

 『失踪HOLIDAY』(乙一)

読了。

乙一特有の世界がここにもあります。

話の語り手でもある主人公(=作者)は、自分の感情を表に出しつつも、 どこかしら醒めた自虐的な感覚で、一歩引いた視点から物事を眺めている。 そんな感じがします。 単なる普通の話で終わらないのは、その視点にあるんじゃないかと思います。

話の展開は、こちらの予想とは違う方向によじれていきます。 どうも、乙一の作品は、こういうジャンルの話ですよと説明した時点で ネタばらしになってしまうような気がしてしょうがないです。 とりあえず、ホラーが苦手な人にもオススメと書いておこう。


5月9日(金)

 Cygwin

diff とか find とか grep などが使えると開発作業が快適になります。 Windows環境で作業しなくてはならない私にとって、 Cygwinは、欠かせないツールの一つだなあと改めて実感した1日です。

 popt of Cygwin

POP-T(ぽっぷ、てぃー)と読んでいました。 メールを取ってくる POP クライアントか何かだと勘違いしていました。 P-OPT(ぴー、おぷと)と読むべきだったようです。 Cygutilsのunix2dosが動かなくて初めて気がつきました。


5月5日(月)

 『蒲生邸事件』(宮部みゆき)

読了。

蒲生邸にいた人々のその後が明らかになる終盤で、ちょっと切なくて、ちょっと爽やかな気持になります。 時間旅行者も含めて、みんな自分の人生を精一杯生き抜いたんだというのが、 歴史の傍観者となる孝史の目を通して感じられるのです。

孝史に宛てたふきの手紙とそれを読んだ孝史が優しくふきに語りかけるシーンがいいです。

『龍は眠る』は泣ける話でしたが、こちらは、どこかほろりとなってしまう話です。

 『奪取』(真保裕一)

一気に読了。

偽札造りに執念を燃やす青年の話です。

青年とじじいは、ストリート・キッズのニール・ケアリーとジョー・グレアムを彷彿とさせます。

ラストのオチは、コン・ゲーム小説にありがちなパターンです。 人が死んだりする割には、あっけらかんとし過ぎている気がしないでもないです。 また、こんなに簡単に別人になりすますことができるのかとか、盗聴器が簡単に仕掛けられるものなのかなど、 細かい部分では、気にならない点が無い訳でもないです。

でも、それを補って余りあるテンポの良さと偽札造りの工程のディテールさで 強引に押し切ってまったという感じです。


5月4日()

 頭痛

頭痛がします。 風邪の前兆? 体調が良くないです。

 読書リスト

ふと思い立って、読書リストを整理してみました。 結構、読んでるはずの作家の作品をここしばらく読んでいないことがわかりました。 意外な発見です。


5月3日()

 Win32OLE (Ruby)

0.5.3になりました。 $SAFE >= 4 のときに汚染チェックをするようにしました。 いつものことですが、artonさんに感謝します。

 本日買った本


5月2日(金)

 タコむす

新大阪駅で「タコむす」なるものが新発売されてました。

「新発売」とか「期間限定」という言葉に弱い私は、ふらふらと買ってしまいました。 どうやら「天むす」に対抗しているつもりらしいです。

「タコむす」とはえび天の変わりにタコ焼きが入っているおにぎりです。 想像したほどにはまずくはありませんでした。 (←正直、食べる前は、どんな味なのか想像できませんでした。) でも、もう1回食べたいとは思いません。 まあ、1個ぐらいなら、またいつか食べてもいいけど、5個もいらないです。

残念ながら、タコ焼きはタコ焼き、おにぎりはおにぎりで 別々に食べた方がおいしいという当り前の結論にしかなりませんでした。 (←「意外と旨いやん。」という感想がもてることを密かに期待していました。) なお、タコ焼きがおかずという感覚は、私にはありません。

ちなみに、「天むす」は結構好きです。 また、タコの天ぷら入りおむすびならおいしいんじゃないかと思います。


5月1日(木)

 『美濃牛』(殊能将之)

読了。 『ハサミ男』ほどのインパクトはありません。 謎解きとしては、可もなく不可もなく。

最初から最後まで、何を考えているのか全くわからない少女がちょっとだけ恐いです。 この少女の描き方(事件における役割の与え方)が気に入りませんでした。 重要な鍵を握るキャラクターだと思っていたのですが...。 結局、この少女の事件における役割が何だったのかさっぱりわかりません。

一瞬、XXXが犯人かと思ったら、事件とは何の関係も無かったです。 どうやら考え過ぎだったようです。(ミスディレクションだったのかも知れません。)

横溝正史を読んでいる人には、いろいろ楽しめるみたいですが、 私は、読んでないので、その辺の楽しみ方はわかりません。 (横溝正史の作品では、『快盗X・Y・Z』ぐらいしか読んだことが無く、 その内容もほとんど覚えていません。)


[トップページへ] [4月] [6月] [過去の雑感へ]