OSTRACISM CO.
■ 日本語エディタ「褌・エディット」−作文職人−の開発日記 巻之八

 FMACPROでの飯森さんとの談義で、TSMインラインの抱えている問題点が浮き彫りにされた。部分確定は仕様上許された実装方法ではあるが、対応できない商品アプリもあるというハナシは勇気付けられるものだ。だが部分確定なんて、こんなものいらない!のひとつであることも事実だ。「この部分は絶対解らない様に (^^;; 書いてありますので」ということは、一応NIM "Text"に記載されているということだろうか。う〜む。
 ATOK8 1.1はこの問題を回避できるということなんだな。まあ、DOS版と違って最後発で、しかも特定のアプリとの関係を持たない!(あのATOKがだぜ、驚き)からには仕様の曖昧さが問題であるとはいえ、修正せざるをえないだろう。
 ともかくVJE-γの行儀よさは特筆すべきことだ。

褌1.1b / 1994.07.11

 C'Mellさんからバイナリメールがきた。WASTEデモだ。これはデモが重要なのではなく、Components.pとTextServices.pが添付されていることが重要なのだ。これで最大の悩みは解決された。
 嬉しかったので、C'Mellさん要望のResize & ComeBackの動作の変更(他のエディタと似た動作になった)と高速スクロールの動作の変更(DOSのエディタに似た動作になった)を行った。もともと面倒な修正を必要とすると思い込んでいたが、簡単なものだった。いつのまにか使えるルーチンが増えていることを忘れていたようだ。
 それにしてもインラインでの問題の報告がまったくこないな。まだ公開されてから2日しかたってないからだろうが、あんまりバグがないってのも寂しいもんだ。
 WASTEデモ添付のTextServices.pはいままで使っていたものに比べ、かなり修正が入っている。Inside Macintoshの記述と違う定数名が直っているし、存在しない定数名も加えてある。当然NewTSMDocumentの間違いも直っている。ただ、AppleEvents.pが古いことでの問題は残ってはいるが、たいしたことではない。

褌1.1b / 1994.07.14

 テキスト上でのマウスカーソルの形態を太いキャレットに合わせて太くした。キャレットの太さを変えるオプションを用意した頃から、すなわちほぼ最初から予定していたはずだったのだが、完全に忘れていた。

褌1.1b / 1994.07.15

 COCOさんの指摘の件はアプリ動作中の話だった。それならばWorking DirectoryのOpenがあるので、動作としては当然だ。しかしソースを追ってみると明示的にWorkDirをOpenしなくてもフォルダの削除ができない。これは何か変だ。
 よくよく調べてみるとSystem 6ではどのソフトもアプリ終了前には、アクセスしたフォルダを削除できないことに気が付いた。
 System 7ではEdit 7やMacWORD2.1は削除できるが、これらもSystem 6ではできない。ASLEdit+はどちらも削除できない。System 7のTeachTextでは削除できるが、System 6のTeachTextでは削除できない。
 たぶんFSSpecを使うと削除が可能になるのだろう。また、旧形式の標準ファイルダイアログを使うとWorkDirが自動的にOpenされるに違いない。System 6ではWorkDirを使う以外の方法がないので、どのアプリでも削除できないのであろう。そういうこった。
 参照する必要のなくなったvRefNumすなわちWorkDirを明示的にPBCloseWDするようにしたら削除できるようになった。これでいいのかな。
 同じくCOCOさんからWX2での動作の異常の報告だ。再現方法はまだつかんでないようだが、比較的頻繁に発生するようだ。インライン変換中のキャレットが予想外の場所にでるらしい。これは次の報告を待たねばならない。
 やっとインラインでの問題がでてきた。

 多喜さんから、褌以外の文書ファイルを開いてSave As...で同じ名前で新たに保存すると、なぜ褌の文書にならないかという質問が来た。う〜ん、そういう仕様で作ったとしかいえないんだが、試しにEdit 7で同じことをするとちゃんとEdit 7の文書になった。しまったそういうことか。同じ名前でのSave As...は通常のSaveとは違う動作をしなければならないんだ。それが期待される動作か。
 簡単なことなので、次回の褌はそのように動作するでしょう。

 インライン問題を解決するための試験公開だったのだが、それとは関係のない細かい動作の報告、要望がでてくるなあ。たぶん試験公開がそれを踏み切る良いタイミングになったのであろう。悪いことではありません。遠慮はしないように(ただし節度は持つように!)。

褌1.1b / 1994.07.16

 C'Mellさんからの第2信でSystem 7.1E + JLK + VJE-γでの動作の不具合が報告された。なんだかとんでもない動作だ。確定の取消し後にキースクリプトをJapaneseからRomanに変更すると、英文字を入力してもインライン入力時のようなアンダーラインが付くのだそうだ。げげげ、こんな現象初めて聞いた。アンダーラインが文字入力と連動して延びるとしたら、TSMのEventが送られてくるということだ。明らかにFEP側か環境の問題だが、こんな動作はまったく予想もしなかった。
 COCOさんからの報告では、インラインエリアからのキャレットの逸脱は再現しなくなったそうだ。System Update 3.0と関係があるのでは?と書いてあるが、それはどうなんだろう? 大きなアップデートだからねえ。
 一応キャレットのインラインエリアからの逸脱を防ぐようなコードを入れた。以降この現象が発生したら、褌のキャレット制御の問題といえる。
 最近Commandキーオペレーションが効かないことがある。ソフトの問題だろうか?それともキーボードが死んでしまったのか?

褌1.1b / 1994.07.16

 だんだんと動作報告がやってくるようになった。
 三好さんからATOK8での動作の異常の報告が来た。インターネットメイルで、Event Logをそのまま送ってきた。ま、4KByteくらいだから可能だったんだな。メールの300行制限はいつのまになくなったんだろうか。
1.漢字の選択ウインドウから数字入力で漢字の確定を行うことができない。
2.確定後、確定直前の状態に戻す機能が使えない。
 1は確定時の動作の問題と判明した。部分確定の解釈の拡張で、全データ置き換えの確定という情報がやってくるわけだ。これはまいった。考えもおよばなかった。そうか、そういうこともありうるんだな。ATOK8はやってくれるよ。

褌1.1b / 1994.07.16

 ATOK8の全データ置き換えの確定に対処したらKatana4でまともに動作しなくなった。なんてやつらだ。日本語に限っても全てのFEPで問題なく動作するインラインなんて実現不可能じゃなかろうか。ま、なんとか再びKatana4でも動作するようにした。
 VJEはアプリの動作を多少変えてもインラインには影響がでない。見習ってほしいよまったく。
 画面表示が崩れるパターンを発見。インライン向けに文字列挿入を高速化した部分だ。やっぱりバグがはいってしまったか。しかたないな。対策対策。
 明日(すでに今日か)は夏会だ。掃除しなくちゃ。

褌1.1b / 1994.07.23

 C'MellさんからのメールでEvent Logが送られてきた。予想に反してVJE-γのバグではなかった。ただし1.0.1と1.0.2での動作の違いが関係していた。入力取消を行うと1.0.2ではHiliteがエラーになるのに対し1.0.1ではエラーにならない。褌はHiliteでエラーが返るまでアンダーラインが有効になるように実装されている。この実装方法が問題だったわけだ。インライン状態が終了したら明示的にアンダーラインを無効にするように変更した。
 インラインのアンダーラインが画面に残ってしまうパターンを発見。対策を練る。
 インライン関連のコードにかなり手が入ってきた。
 ふと、1.1bのソースのバックアップがないことに気が付いた。しまった直接変更してしまってた。1.1bの問題をソースで追うことができなくなってしまった。く〜。
 develop Issue 17が届いた。CD-ROMでNew Inside MacintoshやTech Noteが全部入って\3600ってのは安いねぇ。でも読みにくいんだな(しかたないか)。
 インラインの最中以外はFix要求をしないようにした。Commandキーオペレーションが一番関係する。なんとなくCommandキーオペレーションが効かなくなっるってのがなくなったようだ。ハッキリとはいえないけどねぇ。

褌1.1b2 / 1994.07.25

 YBPのお祭りで食ったお好み焼きが原因だったのかなあ? あんまりお腹の調子がよくないぞ。む〜。

褌1.1b2 / 1994.07.30

 アスキー出版のMacintoshテクニカルノート vol.2を買ってしまった。情報としてはdevelop Issue 17に全部網羅されているのだが、いかんせん日本語じゃないと読む気がまったくしない。でも\12000は高いぞ! アスキーはマックフリーソフトプログラマの撲滅を計画しているのではないか? マックプログラミングのための本代でさえでないよマッタク。
 今後マックのフリーウエアがシェアウエアに変わったばあい、その責任の一端はテクニカルノートの値段にあるとみてよい。責任とるんだろうねアスキー出版!

褌1.1b2 / 1994.07.31

 FMACPROでデフォルトフォルダの設定の話題がでていた。私も昔から疑問だったのだ。標準ファイルダイアログの動きがSystem 6と7で変わってしまったからだ。そうかローメモリグローバルを使うのかぁ。わかんないはずだ。
 これでやっとダブルクリックで開かれた文書のあるフォルダを標準ファイルダイアログでのデフォルトにできた。

褌1.2 / 1994.08.02

 ユーコちゃんとの電話で「どっかいきたいねぇ」というハナシになったが、たぶんなにも決まらないだろうなあ。幹事やる奴がいないんだよねぇ。1993年のマックエキスポに連れていったんだが、ようやく自分でマックを欲しいと思ったようだ。「ねね、もう一回連れて行ってよ」「あれ2月だよ。ずいぶん先だなぁ」
 というわけで1995年のマックエキスポには行くかもしれない。鬼が笑うぞ。

 COCOさんからのメールで、WX2での問題が再現したとのことだ。題して「カーソルが改行コードを越えて次の行に飛ぶ」問題、解決篇!
 ~TSM Event log~を見る。どういう問題かの予測がついているので探すのは簡単だ。あったあった。インライン文字列の長さを超えた位置にキャレットを表示させるような情報が見つかった。これだ。完全にWX2側の問題だ。WX2をインラインで使うと、最悪のばあいソフトがコケることになる。
 WX2はバージョンアップするそうだが、この問題は解決しているんだろうか。
 最初の報告でだいたい予測はついていたので、すでにこの問題には対処している。褌1.2では「カーソルが改行コードを越えて次の行に飛ぶ」問題はでません。でないと思うよ。でないんじゃないかな(さだ調)。
 さて、明日は(もう今日だけどね)年に1回の温泉ドライブだ。8mmビデオテープは用意したし、あとは寝るだけ!

褌1.2 / 1994.08.06

 大江さんのメールの「名前が、個人的趣味とは、少々ずれますが」という記述の意味がずっとわからなかったが、いきなり気が付いた。「褌という名前が」ということか。やっぱり抵抗を感じる人が多いようだ。プログラマのネーミングの悪辣さ・趣味の悪さは洋の東西を問わず強烈だと理解してね。根本的に遊びのないソフトだから、せめてネーミングだけは思い切りたかったんです。私はこの名前好きだよ(あたりまえだな)。

 以下はネーミングの一般論として。
 私のスタンスとしては、褌という名前がいやなら使わなければ良い、というだけのことだ。名前が原因で使わない人には使って欲しくないというところが正直な意見。これはフリーソフト作者がユーザを選別する最後の手段かもしれない。
 日本で2番目のシェアを確保してしまったマシンとなった現在、「マックを使うことが格好良い」というような勘違いをしている人間も増えまくっているんではないだろうか。褌という名前は格好悪いだけでなく、公式の場では語りにくい。これは偶然ではなく、私の意思なのだ。
 干場さんのSuperJのまりなちゃん・なつみちゃん・ともこちゃんなんかは、明らかにどういった人に使って欲しいかの主張があるよね。こういうネーミングやアイコンは、好きな人は本当に好きなんだろうけど、まあ、私は非常に抵抗を感じます(^_^;)。でもこれは干場さんのプロダクトなんだよね。これはやっぱりこの方向で頑張るのがダンディズムなのだと思う。

 浪江さんから何通かメールが来た。前にソフトバンクのフリーソフト紹介本を書いた人だ。その手の本の著者が直接メールを出すのは、意外ではあろうが珍しい。普通は編集部からの通達だけで終わってしまう。
 ソフトバンクに続いて翔泳社からフリーソフト紹介本を出すそうで、TEXTjackをターゲットにするとのことだ。ゲ! なんで今さらTEXTjackなの? 褌はTEXTjackでの反省を実体化させたソフトだというのに。
 浪江さんに「それはちょっと勧められないなぁ」と返事したら、「褌の最新版の方が相応しいですね」とのことだ。ふう。

褌1.2 / 1994.08.10

「ホーム」へ戻る
「読まなくてもいいよ9」
OSTRACISM CO.
OSTRA / Takeshi Yoneki