| 葉山文書 7/26〜8/13の寝言篇 |
そういえば DOS風のコマンドラインツールが OS/2 には少ないですね。 OS/2はVDMが強力だから不要なのかもしれませんが、 やはり、HPFSのロングネームは使いたいし、この手のツールがもうちょっと必要ですね。 むしろ、この手のツールの方が emx/gccもあることだし、 作りやすいと思うのですが、なんで少ないんでしょうね?!
いつになるかは分かりませんが、個人的にはUNIX風のキーバインドを持った FD 風のツール、 ちょうと FDclone みたいなソフトを作ってみたいですね。 ただ、ネックは時間で...ええとですね、まず 1.24での落ちるバグはとれています。 そして、SOSスクリプトは SCRIPTPATH 上に置いておけば、 拡張子を書く・書かないに関わらず実行可能になりました。 これで、DOS・OS/2共用のスクリプトを書くことができます。 ただ、入力されたファイル名と、それに「.COM」を 末尾に追加した名前、それぞれについて、SCRIPTPATH を走査しているので、 ちょっと効率がよくありません。
これにあと、DOSVPATH を追加して、1.30 として公開しようと思っているのですが、 なかなか時間がとれず、先週くらいから、開発が停止してしまってます。 DOSVPATHについての仕様も固まっていないし、とりあえず、 これは放っておいて、1.25 として公開した方がよいでしょうかねぇ。 1.30 は xterm 対応を目玉にするため、まだおいときましょうか... しかし、未だ XFree86 さえインストールしていないという... ほんとにできんのかなぁ(と手を見る)
PMアプリを作るには、Visual Age C++ とかが必要なんでしょうが、 結構、値がはるし、プロやないんやから、趣味のプログラミングに そこまで金をかけるのもね〜という意識もあって、 ちょっと買うつもりはありません(社会人になると考え変わるかも)。
(補足)ですから、NYAOS というプログラムの性能は、基本的に emx/gcc の ライブラリで制限されてしまうわけなんですよね。 ですから、どうしても出来ることと出来ないことがありそうで、ちとくやしい。 その点、PC-UNIX なんかは、開発環境が全てひっついてくるのがうらやましい。 でも、XFree86 for OS/2 なら、emx だけで Xウインドウアプリが作れるかな?
emx でも PM アプリは作れるそうです。ううむ、思い込みはいかんなぁ...
まぁ、それはそうと、OS/2 は フリーソフトが少ないですね。 舶来ものは一見多いように見えて、ほとんどはシェアウェアだったりするし、 コンソール系のやつは、AXの呪いで、罫線が全てカナに化けて、 みっともないのが多いです。一度、AFONT で、カナのところを全て罫線に置きかえた fontxフォントにしたことがありますが、WPS 内で半角カナを使って いるところが思ったより多かったので、結局やめました。
日本のフリーソフトは、多くの作者が「OS/2を広めねば」という 志を持っているのかどうかは知りませんが、シェアウェア率は 低いようです。しかし、絶対数が少ないのが、いかんともしがたい... Pack for Win を読む限りでは、Windows版ならば同じような ツールでも必ず2,3個存在していたりするんですよね。 まぁ、JAVAもいいですけど、OS/2 を普及させたいんだったら、 開発ツールを安くすることが必要ではないでしょうかねぇ。
ところで、emx のバージョンはいつになったら、「0.9」から「1.0」 になるんでしょう?
OS/2 のセールスポイントとして、みなさん、よく REXX をお勧めになるんですが、 僕は REXX がどうもうまく使えない人間なんです(;_;) 理由として次のような点があります。
(補足)
書き殴ってから、その後、ちょっと反省しました。 まぁ、僕は Perl とか C言語に毒されすぎなんでしょうね。 上で書いたことは、かなり偏見入ってると思います(笑)。
いや、使いこなせれば、ものすげー便利な言語に違いないと思うんです。 その言語一つで、ノーマルなREXX以外にも、Dr.Dialog とかも使えるように なるでしょうし、PC-DOS 7 でも利用できますし。 しかし、使い易い(安い!?)リファレンスマニュアルが無いもんで、 つい、いらついて投げ出してしまうんです。 (;_;)
やはり、言語一つをマスターするならば、 ちゃんとしたマニュアルを買わねばいけないかなぁ... それなりにお金をかければ、元を取り返さねばと一生懸命になるんですけどね。
まぁ、普通、OS/2 ネイティブのソフトが、そのまま xterm で動く なんていうことは無いだろうから、あたりまえと思うのですが、 NYAOS では極力移植性を考えて、 v_****系のVIO関数の使用を控え、できるだけ printf と BACKSPACE などに押さえていただけに、「あとちょっと、何かが 足りない、惜しい」という心境です。
実際のところ、タイトルの表示に ESC[2J ESC[1H などを実は使っていました。 この他、color-ls や prompt の $I でもエスケープシーケンスを使っていますが、
alias ls="ls -o"
option -vio
などで、抑制できるはずです。しかし、画面表示が原因ではなさそうな雰囲気。
僕自身は、まだ XFree86 をインストールしていないので、 何とも言えないのですが、あるXに詳しい方によると(筑波の宇野さんです(^_^;)、 どうもキーボード関係で凍っているのではないかとのこと。 単純に read_kbd 関数を使っているのですが、これがどうもまずい模様。
しかし、何はともあれ、XFree86 の xterm 上で動かすと公言した以上、 XFree86 をまずはインストールしなければ。 だ、だが、時間が....。今、秋季大会の用意で、 三日ほど、大学に泊り続けているのですよ。誰か助けてくれぇ... (今日、帰りますけどね^^;)
おそらく、ソースでsystem("ELL ...")って感じで、自分自身を呼び出していたと思うのですが、絶対パスで起動すると機能が利用できないというのもおかしいし、これではバッチファイルから使用することもできないので、ちゃんと自分自身の絶対パス名を取得して、それを使って起動するようにしたいと思います。
あと、ELL の tips になりますが、標準入力に対応していないページャーは、ell.prm の最後に「!*;エディタ名」という行を追加すれば、(たぶん)利用可能となります。ただし、[RETURN]キーで起動する場合で、「v」では駄目です。
展開順序を入れかえた時に、書き込むバッファを入れかえるのを忘れるという... だから、スクリプトを実行したり、「&」を末尾に書いたり、 「&&」などを使うと、NYAOS が落ちてしまいます。
また、機能を追加して、うかれてしまって、十分なチェックを怠ってしまいました。 とほほ。いつまでたっても安定版にならないなぁ...ちなみに、今、手元のバージョンでは、1.24のデバグは済んでいるのですが、 思いきった機能拡張に踏み切ってしまって、公開するにできない状況になってしまいました。 人の迷惑省みずですね。まぁ、その前の 1.23 も 公開したのが 10日くらい前なので、 まぁ、当分 1.23 で我慢していただくということで、お許しくださいませ。
(一応、一ヶ月に一回をバージョンアップのペースにしているつもりですが、 化学工学会秋季大会の準備や、後期試験(^^;)で忙しくなるので、 次の 1.25(もしかしたら、1.30)は、だいぶと後になりそうです)
この TVFS、以前にも使ったことがあったのですが、その時は ファイルのシンボリックリンクが主に欲しかったので、 リンクの数に上限のある(といっても100以上はあると思うが)TVFSは ちょっとなーと、その時は敬遠しました(使い方も悪かったし、勘違いしていました)。
最近になって、HDを増設したのはいいんですが、PureDOS と OS/2 で ドライブ文字が違って混乱するような状況になりまして、 ディレクトリのリンクを自由に張れるという点で TVFS が必要になりました。
久しぶりにインストールしてみると、どうも TVSAVE がハングしたりするんで、 一度、使用をあきらめていました。 そこへ OS/2 mag. が特集をしてくれて、設定すべき、オプションが分かりました。
tvctl -Dw
しかし、推奨の設定は普通、オプション無しのデフォルトにするよなぁ。
TVFS.INF をよく読まなかった言い訳になりますが、 VIEW.EXE って使いづらいんですよね。 画面いっぱいにウインドウを開いてしまって、 マニュアルを見ながら作業するっていうのが非常にしにくい。 いったい、IBMは何を考えているんだか。 しかも、強調も(ハイパー)リンクも同じように青い文字を使うし。 はっきり言って、INF形式なんぞ廃止してしまって、ヘルプも何も 全て html で供給して、ブラウザで見るようにした方が、よっぽどいいと思う。
結局、e:\startup.cmd に次のように設定しました。
tctrl -Dw
tvmount z:
tvlink -rw z:\usr e:\usr
tvlink -rw z:\pool i:\pool
tvlink -r z:\bin e:\usr\bin
できれば、フロッピー(a:)や、CD-ROM(j:) とか ZipDrive(k:) とかも
tvlink -n -d -rw z:\floppy a:\
tvlink -n -d -r z:\cdrom j:\
tvlink -n -d -rw z:\zip k:\
とリンクできたらいいんですけどね。
それぞれ、メディアを入れている時でないと、リンク張れないみたいです。
volcheck.cmd とか eject.cmd とかを用意するという方法もありますが...ね。
ついでに、今までコメントやロングネームが低輝度の白(灰)で表示されていて、
あるのか、ないのか分からないので、この際、コメントは青地に白、ロングネームは
赤字に白という目立つ色で表示されるようにしました。まぁ、これは趣味も
あると思うので、
LS_COLORS に新たに「cm」と「ln」という項を追加して、カスタム可能にしました。
(なるべく早く公開します)
こうやって、eadir を改良すると、いつも、ついやってしまいたくなるのが、ディレ クトリやアーカイブにメモをつけまくることですが、内蔵コマンドの comment とか eadir とかは、ちょっと打ちにくい。そこで、
alias ll="eadir %*"
alias memo="comment %*"
という2行を自分の ~/.nyaos に追加しました。
しかし、せっかくコメントとかを簡単に書き込めても、テキストファイルの拡張属性 は簡単にエディターに消されてしまうのが、悲しすぎるますな(我ながら、しつこい)。
唯一、拡張属性を維持してくれる 奥村版 jstevie は、 初期設定ファイルとしてカレントディレクトリの./stevie.rcしか読んでくれない ようで、失望(これは stevie 自身の特徴かもしれないが...)。 ~/stevie.rc や%EXINIT%も読んでほしかった。
やはり、UNIX から移植されたプログラムは拡張属性に冷たいなぁ。
]] ]] ]] ]] ]]]] ]]]] ]]]]] ]]] ]] ]] ]] ]] ]] ]] ]] ]] ] ]]]]]] ]]]] ]]]]]] ]] ]] ]]] ]] ]]] ]] ]] ]] ]] ]] ] ]] ]] ]] ]] ]] ]] ]]]] ]]]]]というタイトルロゴの非空白部分を単に
に置きかえただけです。