ここに至って、ようやく、未知の領域の開拓仕事が終了した。期間的にかなり苦しい状態になってしまったが、後の仕事は基本的に力技のコーディング仕事が中心である。今までの予定が立たない状態より、よっぽどマシなので、厳しいといえども、まだちょっとマシだね。
でも、1週間くらいで終わるはずの仕事に1ヶ月以上かかってしまった…。大赤字だろうなぁ、きっと。とりあえず、反省しよう。でも、そもそもワタシのせいなのか!? ワタシのせいなんだろうなぁ。ということで、土日返上である。トホホ。でも、文書はオトさない。誉めろ、皆の衆。
(((((●〜*
よく考えると、うちの会社の大阪本社全体で、協力会社の人達も含むと、1000人くらいいるわけだから、潜在需要は結構あったわけだよね。いやはや、何はともあれ、便利になったことは嬉しいぞ。おかげで変なアイテムをついつい揃えてしまいそうだ(先週の買い物リスト参照)
(((((●〜*
月刊アフタヌーン。最近ちょっとつまらなくなってきたような気がする。なんとなくメジャー路線に走りすぎて、薄味になってきているぞ。モーニングやマグナム増刊の方がおもしろいっす。
Microsoft の軍門にまた下るみたいで屈辱を若干感じるが、表計算ソフトは確かに便利だ。今、データベースの必要容量を計算するのに使用しているが、Microsoft Word と違って、文字や図が踊り出すことが無いし、とても快適である。だが、思うに、Lotus 1-2-3でも、差は分からないような気がするな、ワタシの場合(1-2-3使ったことないけど)。
Lotus といえば、1-2-3 ぢゃなくて、Lotus notes。(会社標準だから)仕方なしに使ってるけど、使ってると、どんどんどんどんどんどん、重たくなっていて、やがて文章入力もままならなくなってゆく。絶対メモリーリークを起こしているとしか思えん。何とかならんかなぁー。
あ、そういえば、ワークパッドのクレードル(の予備)、また買うの忘れた…。RPM の本も買うの忘れた。軟弱OS/2 Warp プログラミング3の送金も未だやっていないぞ(郵便為替は作ったのに)。OS/2 の話題も書くの忘れているし… どうかしているぜ、最近の俺様。最近に限らんか、別に。
今度は、Oracle 8i の導入。これは、ディスク障害が直る前にも一通りやったので、特に問題なく終わった…なんて言えると思ったら大間違い!まだまだ、トラぶったのだ!いや、トラぶっている(現在進行形)。もう、ぶっているんですよ(なれなれしい)。
その前に解説せねばなるまい。Redhat 6.1J は Oracle 8i for Linux のプラットフォームとして、大きな声では言えないが…サポート外だったんだね(でも、5月くらいには、Oracle8i 対応版 Redhat 6.1J が出るとのこと。FRIES さん、情報感謝。しかしながら、時すでに遅しなのです)。でも、動作するカーネルやライブラリの条件は満しているということから、基本的にインストーラに問題ありという状況なのだ!(Java で書くなよなー)
しかしながら、米Oracle も親切か不親切かは議論の余地ありだが、technet.oracle.comというところで、6.1 へのインストール方法を解説してくれていたのだな。ありがたや。ここは会員制だけど、無料で登録できるのがありがたや!(これを探すのも実は一苦労あって、goo で英語圏をサーチして、偶然見付かったのだ。technet なんつーサーバー知らないつーに)
で、これに従えば、だいたいオッケーだったんだけど、一つだけ、そのままそのまま従って死を招いたことがあった。それは「./linux.sh」を実行するって奴。これは、どうもリスナー関係の実行ファイルを再リンクするみたいなんだけど、実行すると、DBサーバー間通信が出来なくなる。つまり、そのDBサーバーから別のDBサーバーへクライアントとして通信できなくなるんよ。これ二つDBサーバーがあったおかげで(土曜に)分かったけど、普通分からんつーに。
こんなことになるなら、8i やめときゃよかった(って決定権わたしに無いけど)。結局、双方レプリケーション機能(難しくて)使うのやめようと思ってるし。
あ〜あ、本当は今日会社に行くつもりだったんだけどな…。しんどくて、結局、行かずじまい。Aさん、Sさん許して(読んでたら怖いが…)。
(((((●〜*
ちなみに、TeX の場合も、英語版はブラウザと同様な動作をするが、日本語版の場合、末尾の文字が DBCS の場合は改行文字は0文字になるという安心設計となっている。さすが和製だね。
いつまでも TeX を羨しがっていてはいかんというわけで、HTML でどうにかする方法を探らねばならないのだが、有名な解決法としては「改行をコメントで囲む」という方法がある。っていうか、それ以外だと「改行しない」しか無いのだが。
でも、いちいち「<!--↓-->」って打つのは面倒だ…ということで、葉山の場合、今まで SKK で 「/htmlf」で「<!--↓-->」と変換できるように単語登録していた。これはこれでナイスな手だと思うのだが(見事な自画自賛だ、たいしたことではないのに)、すでにある改行をインデントも含めて隠したりできないんですな(あとから余分な改行を Ctrl-D で削除することになる)。
そこで、結局 EmacsLisp に手を染めてしまった。って、これを紹介するために、ここまで話をひっぱったんだけど。
(defun htmlf ()
(interactive)
(insert "<!--")
(if (or (not (eolp)) (eobp))
(insert "\n")
(forward-char 1)
)
(while (looking-at "[ \t]")
(forward-char 1)
)
(insert "-->")
)
(global-set-key "\C-x\C-m" 'htmlf)
行末にある場合は、既存の改行をコメントで囲むだけ。そうでない場合は、コメントで囲んだ改行を新規に作成するという、なんの変哲もない EmacsLisp (笑)。使い方は、~/.emacs に書いて、Mule を起動すればいいだけ。C-xC-m をタイプしましょう。
でも、えてして、この手のものは、他の人が既に作ってたりするんだよね。おそらく、ちゃんとした Lisper の方々が見たら笑うかも。まぁ、習作だから許してという感じか。ちなみに、昔は HTML-Helper-mode とやらも使っていたんだけど、どうも趣味が合わないのでやめてしまったので、紹介は無用の長物あるね!
(((((●〜*
っと、その前に、前に叫んでいた SJIS 対応 vi の件を報告せねばなるまい。こちらは、jvim のページからソースとパッチをひっぱってきて、コンパイルオプションをゴチャゴチャ触って何とか出来ましただ。さすがに Win32 もサポートしているだけあって、SJIS も対応せずにはいられないか…(それ、ちょっと違わへん?)。あと、かんなもサポートしているはずなのだが、何故か漢字変換モードになれない。まぁ、いいか、これは(どうせ、telnet だし)。
で、いい意味でハマるというのは、単に最近になってようやく、vi で「8タブのまま、4文字単位でのインデントを楽にする方法」を知っただけなんですわ。笑うね。要は「export EXINIT="set sw=4"」して、Ctrl-I ではなく、Ctrl-T でインデントを作るようにすりゃいいつーだけなんで、知ってる人には常識なんだろうと思うんですけどね(こればっか)。
今までは「set tabstop=4」してたんで、cat とか less・Mule では見られたものにならなかったので、これで心おきなく、vi できるというものじゃ、はは。あと、vi で さっきの htmlf みたいなことも出来たらと思うのぢゃが、それはさすがに無理かな(笑)
ということで、「タブ文字は普通8文字」だと思うんですけど、どうでしょう? Vz 派は違うかな、やっぱり。
P.S. vi の情報を探っている間にwww.vim.orgなんてのを見付けました。すごいですね。「燃える」vim バナー。(^_^)
(((((●〜*
いやはや、やはり、同じ文化の中で頑張ってきた仲間というものはいいもんです。あの二年間は自分にとって、かけがえのない、貴重な時代だったんだぁと、つくづく思いまする。
そういえば、何か、研究室の人、および、その父兄の方も、本ページをご覧になっているとのこと。はずかしー(だったら書くな)。でも、何か、役に立っているとのことで、よかったよかった(その一方で、頼まれたプログラムを未だ上げていないので、よくないこともたくさんあったりして…)
(((((●〜*
まずは書籍編:
グイン=サーガも、いよいよ、真の敵(!?)ちゅーか親分が登場ですねぇ。まいど思うが、とても、100巻で終わりそうもないすね。ちなみに買おうとした日は書店で売り切れだったので、既に購入した友人から買ってしまった。そこまでするか。
(((((●〜*
実のところ、eff は結構触っていて、構文解析エンジン(って言うと格好いいね。でも、実体はただの1クラス)を改良し、環境変数でも、設定ファイルでも同様に読み込めるようになったっす。でも、見た目の機能は変わっていないので、また公開はまた来週〜というわけ。
NYAOS の方は、当分、休眠かなぁ〜というとこです。出来ることはだいたいやったし、開発意欲の大半が eff の方へ向いているというのが大きいですね。バグが出たら話は別だけども。あ、仕事の意欲は別ですんで…。
8iのインストールは、先週叫んだ通り、かなり苦しんだりしちゃったりなんかしたので、不安がかなりあったのだが、それも京の町へ近付くと共に薄れてゆき、代わりに妙ななつかしさがこみ上げて来た。特によく見知った場所を通ったというわけでもないのに、この何と模いえない郷愁は。やはり、この町は魂のふるさとであるためなんだろうか。それとも、単なる現在の境遇から過去に戻りたいという願望の裏返しに過ぎないのであろうか。その割に、未だに単位が足りないという悪夢に時折うなされるのは納得いかんぞ。そんなにトラウマしていたのか、わたしは。
さて、そんな私の気持ちをよそに、走れタクシーはブンブン走り、目的地へ到着。(ルイス=フロイス風に)キクトコロニヨルト、要はリンク時に関数が見つからんと。(先輩と共に試行錯誤1時間)Makefileの書き方、間違ってんじゃん。実行ファイル生成ルールは、*.o → *.cgi しか定義しとらんのに、最終生成ファイルの名前は拡張子無しじゃなかとですか。これでは、デフォルト生成ルールが適用されるから、いくらライブラリ指定しても駄目なわけだ。はっはっは。
しかし、そうは問屋は卸さなかった。別のツールを利用するために某社が Oracleの *.so を差し換えているそうなのだが、どうやら、その差替版と、それを参照するPro*Cライブラリと情報が食い違っていてWarningを出してしまうのだ。Warningの直截の理由はモジュールサイズだから問題なかろうと思いはしたが「何とかして」の一言に私の期待は霧散する。
しかし、俺は何とかした!
俺って、Make の達人だね(思い上がり)。実際はOracle の Makefile 用の include ファイルの修正版を作り、そこで、リンクされるライブラリを変えるようにしただけなんですけどね。
(((((●〜*
サポートセンターにて、状況を再現した上で、対応策を持って来てくださったのだが…(ちなみに、来た方は技術者だけど、サポートセンターの方ではない)。
しかし、直らん!
当初は、ソフトウェア Raid ドライバがハードウェアで実現する Raid に悪さをしているという見込みであったのだが…どうも、ディスク容量など詳細まで一致していなかったから再現しないのであろうということで、結局、その日は デバイスドライバのソースまで見て、RH 6.0 までと6.1 でバージョンが変わっているのを確認したまでで終ってしまった(以上、約5時間くらいの格闘)。
翌々日になって、メールにて、復旧案が届いた。どうやら、/usr/src/linux/.config に一行「CONFIG_SCSI_MULTI_LUN=y」という行を加えて、カーネル再構築をすればよいかもしれないとのことであった。やってみると…
直った!!
苦労した割に、えらくアッサリ直ってしまったもんです。いやはや、お疲れ様でした。(なんだかんだ言って、二週間ほどトラブっていたのだ、これ)。
(((((●〜*
ということで、DOS の起動ディスクに Vz Editor のみを入れて、昼休みに復旧に挑戦することになった。そう、Vz のファイラーを使って、日本語パス名の入力を誤魔化そうと思ったわけわけだな。
実際やってみると…、Vz から呼び出される move などのバージョンが違っていたため、ちょっと手間取った。だが、Win98 の起動ディスクから再起動して、Vz を立ち上げるなどして、何とかファイルをルートに移動させることは出来た。しかし、再起動しても、起動せん…(変な日本語だ)。そこで、起動ディスクから「C:\windows\command\sys A:\ C:」と、無謀にもシステムファイルの転送を試みてみた…。すると
あっ、起動し…なかった…
コマンドプロンプトが上がっちゃったぢゃん。とりあえず、昼休みが終わりそうだったので、一時撤退。
夕方、自分の VAIO を触っていて、解決案を発見。どうやら、sys コマンドを使って、システムを復旧する際は、MSDOS.SYS は一時リネームして、上書きされないようにしなくてはいけないらしい(とヘルプにあった)。そこで、夕食後、自分の VAIO の MSDOS.SYS をフロッピーへコピーし、友人のところを訪れた…。で、これを彼の C: ドライブへコピーすると…
直ってしまった。
世の中、甘くできているのか、辛くできているのか、分からん。ただ一つ言えるのは、Windows98 って、適当に出来ているってことだね。
あ、今回、Solaris/RedHat 6.1/Windows98 の話題は出てるのに
OS/2 についての話が全くねー!
すまぬ。また、次週ぢゃ。