読書中。
15ページの脚注に笑ってしまった。
「eachLineを使ってソースに行番号をつける」 を見て、一瞬、Rubyかと思った。
慌てて、Groovyのホームページをチェックしたら
Groovy is a new agile dynamic language for the JVM combining lots of great features from languages like Python, Ruby and Smalltalk and making them available to the Java developers using a Java-like syntax.
とあった。納得。
ruby-talkでは話題になっていたようですが、見逃してました。
UTF-8なページを見ようとすると不便なので、.emacsに追加。
(autoload 'w3m "w3m" "Interface for w3m on Emacs." t) (add-hook 'w3m-mode-hook (lambda () (require 'un-define) (require 'un-tools)))
読了(再読)。
今の私にとって、タイムリーな話がいくつかありました。 ピンとこない部分もありましたが、立場が代わって再読すれば、ピンとくるかも知れません。
JavaScript を使うのは、vbs じゃなくて、asp の方。
なので、
autocmd FileType aspvbs map ,j :set filetype=javascript<CR> autocmd FileType javascript map ,v :set filetype=aspvbs<CR>
としておく。
CygTerm から screen を起動して、そこで、Emacs を使うと、Ctrl+s が効かない。 一番つらいのはファイルの保存ができないこと。
今気づいたけど、Ctrl+X s と Ctrl+xCtrl+s を振り替えれば我慢できるか。 ファイルを自動保存するようにすれば我慢できるか。
読了。
連作短編集。 どの作品でも、幽霊や生霊や予知夢やらなんか不思議な現象が必ず事件に絡んできます。 最初の作品を除いて、他の作品は、事件と不思議な現象の結びつきが弱く、作品として弱いかなと感じますが、 それすらも作者の計算であったことが終盤、明らかになってきます。 ですが、その計算は、私のストライクゾーンからは外れていました。 『バルーン・タウンの殺人』のような作品も書けるのだから、不思議路線で最後まで押し通してほしかったです。
結局、事件と現象の結びつきが最も強い「横縞町綺譚」が好みとなってしまいました。 トリックが鮮やかな「山上記」が次点。
Vim 6.2 で、*.vbs ファイルを開くと、filetype が vb に設定される。 これは、これでいいのだが、中で、JavaScriptの部分を編集しようとすると不便だ。 簡単にfiletypeを切り替えられるように、.vimrc に追加。
autocmd FileType vb map ,j :set filetype=javascript<CR> autocmd FileType javascript map ,v :set filetype=vb<CR>
ついでに、JavaScript用のindentのファイルが無かったので、Javaで代用。
mkdir ~/.vim/indent ln -s /usr/local/share/vim/vim62/indent/java.vim ~/.vim/indent/javascript.vim
もっと賢い方法がありそうだけど、よくわからんかった。
インストール。
./configure make make install
最近のscreenは、最近のCygwinだと動くようになったのだろうかと思って、 Google で
cygwin screen
で検索するとここのサイトのページが一番最初にヒットした。 どうしてですか? > Google
それは、さておき、GNU screen は、cygwinでも、それなりに動きそうな気配。 望みがありそう。
Cygwin環境で試してみました。
./configure make
とするとコンパイル時にエラーが出ます。 エラーが出たところはコメントアウトにするという何の工夫もない地道な作業を繰り返し、最後までコンパイルを通しました。 画面の分割とか、切り替えとか、ちょっと試してみた感じでは、それなりに使えるかも知れないという感触を得ました。
インストール。
./configure make make install
Mule-UCSを組み込むと時間がかかるので、Mule-UCSの使用を控えることにしました。 不都合があれば、そのときに考えるということにします。
読了。
猫丸先輩の短編集。殺人事件はありません。 どちらかというと日常の謎派に近い事件ばかりです。 「猫丸」という名前から、ちびで、ずんぐりむっくりした鈍重なキャラクターをイメージしていたのですが、 どうもそうではなく、ちびだけど、童顔で、すばっしっこいキャラクターだったようで 誤解しておりました。 事件そのものが意外で、意外な犯人の動機が明らかになる『トレジャーハント・トラップ・トリップ』が好み。
にがりを入れすぎないようにスポイトは買ったのだけど、 分量を計る計量スプーンや温度計を買うのが先ではなかったかと思い始めている今日この頃。 まだまだ、実験器具が不足している。(←何か間違ってます。)
朝早く目が覚めたので、前回使った豆乳の残りを使って豆腐作りに再挑戦。 (賞味期限も気になっていた。) 今回は先に電子レンジで2分ほど暖めてからにがりを投入してみた。 かきまぜても固まる気配は、これっぽっちもない。 さらに1分ほど電子レンジで加熱してみたが、全く固まる気配がない。 しばらく放置してみることにした。 5分ぐらい放置した後、固まる気配は無いので、さらに1分ほど加熱。 でも全く固まる気配はなくてさらさらの液体。 会社に行かないといけない時間になったので、そのままほったらかしにして出社。
帰宅後、見てみたら、固まってはいないものの、どろっとした状態になっていて、つぶつぶの固まりが見えた。 失敗はしたものの、状態が朝と違っていたので、ちょっと興奮してしまった。 面白い。 もうちょっと遊んでみよう。
ちなみに今回、使ったのは、朝日食品工業(asahico)の豆乳。
人月の神話に登場するドロシー・セイヤーズってあの、ドロシー・L・セイヤーズのことなんでしょうか。
今まで、escreenを使っていたのだが、 ElScreenというのを知ったので試してみた。
tar zxvf elscreen-1.2.4.tar.gz cd elscreen-1.2.4 emacs --batch -f batch-byte-compile elscreen.el cp elscreen.elc /usr/local/share/emacs/site-lisp
あとは、.emacsに
(setq elscreen-prefix-key "\C-t") (load "elscreen" "ElScreen" t)
としておく。
prefix key を Ctrl+t に変更したのは、screenのprefix keyも同じように変更しているから。
同一人物だったとは知らなかった。
一気読み。
トリッキーなストーリーテリングというのに心魅かれて読んでみたのだけど、私が期待していたものとは方向性がちょっと違った。 途中、ディーン・R・クーンツの某作品を連想したり。 その一方で、岡嶋二人の某作品を連想したり。 暗殺者の淡々とした仕事っぷりからは、 ローレンス・ブロックの『殺し屋』を連想したり。
渋い展開を期待したのだが、どこかしらB級サスペンスの匂いが抜けきれないのは、その設定ゆえか。 最後のオチも安直と言えば安直だし、何かが足りない。
知人から、にがりを買ったので、 豆乳を買ってきて、試しに天然にがり豆腐作りに挑戦。 (←半分は理化の実験の感覚です。) 電子レンジを使っていると、全く固まる気配もなく、豆乳が沸騰しまくってかなり危険な状態に。 (←「ボンッ」という音がしたので、慌てて電子レンジをとめました。) サランラップをかけておいて良かった。 結局、電子レンジで30秒ぐらい加熱してはちょっと醒ますという作業を2、3回繰り返す。 そのうち、固まってきたんだけど、完全には固まり切らず、豆腐もどきにしかならなかった。 できたて(←できてるのか???)をスプーンで掬って食べてみると、何となく甘味があってうまい。 食感は、絹ごしより木綿に近い。 私は、木綿の方が好きなので、これはこれで良し。
電子レンジより湯煎の方がいいのかもなあ。 もう少し作り方を調査、研究してみよう。
読了。
サラリーマンから私立探偵へ転職した仁木順平と探偵志願の助手、安梨沙が、依頼された事件を解決していく連作短編集。 日常の謎派の作者ならではの事件で、犯罪らしい犯罪は出てこない。 「最上階のアリス」が好み。
『銀杏坂』(松尾由美)
文庫化されてたとは知りませんでした。
.documentを定義すればできるんですね。 早速試してみました。
トップレベルの .document に
ext
を追加。
さらに
win32ole
とだけ書いた ext/.documentを用意。
さらにさらに ext/win32ole/.document に
win32ole.c
と追加。
コンパイルして、make install した結果は次の通り。
win32ole.c: No definition for fole_initialize No definition for fole_invoke No definition for fole_free No definition for foletype_initialize No definition for folemethod_initialize No definition for folemethod_event_interface No definition for folemethod_helpstring No definition for folemethod_size_opt_params No definition for foleparam_ole_type No definition for foleparam_ole_type_detail No definition for foleparam_retval No definition for fev_initialize
なるほど。 ちゃんと ri 用のドキュメントを全部用意しなきゃ駄目ってプレッシャーをかけてくるのですね。
試しに、
ri WIN32OLE#[]
なんてことをするとめっちゃめちゃ寂しい出力結果が出ます。
ri String#[]
と比べると、もう笑うしかない位に寂しいです。 手を抜かずに、しっかりとドキュメントを書けというプレッシャーもかけてくるのですね。 ri(rdoc) 恐るべし。
Ruby OCI8を試してみた。 SELECT文しか試してないけど、Cygwin環境でもあっさり動いた。 Oracleのバージョンは、9i。 これから色々と使えそうだ。
読了。
あまりに居心地が悪いし、残りのストーリーが気になったので一気読みしてしまった。 魅力的な謎に比べて、謎解きは、あっさりとしている。 XXしていた主人公がXXして真相がわかってしまうというミステリとしては反則だろうとも思えるような結末である。 その真相も、現実味のない衝撃的なものでもある。 だが、舞台設定そのものが、現実味の薄い世界であり、その世界においては、この真相もありかなと思わせてしまう。
居心地が悪いと感じていたのは、この点である。 現実味の無い世界、それでいてSFのような完全にあり得ない世界とも違う微妙にベクトルがずれている世界が、 どっちつかずで落ち着かなかった。
どっかで読んだことがあると感じたのは、 『三月は深き紅の淵を』の 第四章の作中作が同じ舞台設定で、 同じようなストーリーが展開されていたからだとわかった。 そうは言っても、真相もエンディングも異なるし、設定も微妙にずれているので読み比べてみると面白い。
読了。
並行して、『JavaScript 第3版』を 読んでいるせいかも知れませんが、物足りませんでした。 IIS5.0対応ということで期待して買ったけど、ちょっと期待外れだったような気がします。 本文の中でメソッドの一覧が表で出てくるところがありますが、引数に関する説明が一切無いので、 実際のプログラミングの作業では、使いづらいと思われます。 引数の説明は、資料編を見ろということなのかも知れませんが、ちょっと不親切で残念です。
Amazonで見ても、評価は、あまり高くないですね。
Firefoxをインストール。 Mozillaよりも動きが軽い。
ささらさやの巻末にある作品リストでチェックしたら、順調に全作品を追いかけている。 私としては珍しい。
SpiderMonkeyをインストールしてみた。
cd js/src make -f Makefile.ref cp Linux_All_DBG.OBJ/js /usr/local/bin
Win32OLE拡張ライブラリのソースをいじっているときに、 拡張ライブラリは、ri 用のドキュメントを生成してくれないことに気づく。 mkmf.rbに(ひょっとしたらmkmf.rbの元ネタとなるrbconfig.rbとか、mkconfig.rbにも) 手を入れないといけないことだけは、わかった。
もっとも、ri用のコメントをwin32ole.cに書かないとドキュメントもへったくれもない。
これは、Ruby 1.9での話です。
『幻獣遁走曲』(倉知淳)
猫丸先輩が登場する短篇集。
途中までしか読んでないんだけど、どうも前に読んだことがあるような気がして仕方がない。 しかも新幹線の中で読んだという妙に具体的なシチュエーションまで浮かんでしまう。 だとすると、普段、ハードカバーは持ち歩かないので、文庫本で読んだはずなんだけど、 それは奥付の日付からして、あり得ない。 メタ小説的雰囲気もちらほらと見え隠れしてきており、読んでいてどんどん居心地が悪くなってきている。
試した。 psqlのプロンプトが出てきて、psqlでできることがEmacsの中からできるみたい。
db-ext.vimを試してみた。 使い方が今一つわかりません。
psqlのプロンプトが出てくる訳じゃなくて、shell経由でpsqlを実行しているみたい。
入力したSQL文をCtrl+v で選択状態にして実行することもできるんだけど、
select * from table;
は、OKで
select * from table;
はNG。
select * \ from table;
とするとOKになった。これはちょっとつらいなあ。
内部的には、
psql -dMydb -c "select * from table;"
をshell経由で実行して、その結果をVimのバッファに取り込んでいるみたい。 なので、'\' を使わないといけないみたい。
今のところ、Emacsの方が使い勝手は良さそう。
Cygwin上から、sqlplusを使っているのだが、どうも使いづらい。 ふと思って、Cygwin上のEmacsから 'ESC+x shell' してその環境でも使えるかと思って試してみたら、ちゃんと動く。 これなら、ESC + p とか使えるし、もっと便利かも知れない。
Emacsのことだから、sqlplus用の環境とかあるんじゃないかと思ってGoogleで検索したらちゃんとあった。 試しに 'ESC + x sql'と入力して、Tabキーを押せば、 sql-postgres sql-mysql sql-oracle などなど色々出てきた。 灯台もと暗し。
Vim 上から使えるものもあるみたいだからそれも含めて調べてみよう。
インストールした。
./configure --disable-nls make make install
第一部を読み終わりました。 Perlを手本とした強力な正規表現をサポートしていたとは知りませんでした。 ますます面白いです。
siteというキーワードつきで検索すれば、サイト内の検索をできるのだが、このページなんかは、うまくいかない。
site:http://homepage1.nifty.com/markey テスト
なんてやってみても駄目なのである。
今日、本屋で立ち読みしていたら、inurlというのを使うとできるらしいことがわかった。 (書名は忘れたけど、オライリーの薄い本だったので、 多分、GOOGLEポケットガイド だと思います。)
inurl:homepage1.nifty.com/markey テスト
と入力して、Googleで検索してみると見事に私のページだけ検索してきてくれる。 ここで、inurlを指定するときにhttp://は削る必要があることに注意。
これに気を良くして、Googleを使った検索をホームページにつけてみた。
<form action="http://www.google.com/search"> <input type="hidden" name="hl" value="ja"> <input type="hidden" name="hq" value="inurl:homepage1.nifty.com/markey"> <input type="hidden" name="filter" value="0"> <input type="text" name="q" size="40" maxlength="256" value=""> <input type="submit" name="btnG" value="検索"> </form>
参考にしたのは、 結城さんの「サイト内の検索にGoogle.comを使う方法」と O'ReillyのGOOGLE HACKSのページ。
これで、あのソフトのインストールはどうすればよかったんだっけとか思ったときに探し出すのが楽になる。