Nyaosick FAQ page

迷える Nyaosicker達よ、よくぞ来た。もっと迷うがよい。 (こらこら)

目次

  1. インストール篇 … 起動もできへんやんけ
  2. バグちゃうんか篇 … いったいどないなってんや
  3. わがまま篇 … こんなこともできんのか
  4. その他 … お前では話にならん!上司呼んでこい!

インストール篇

NYAOS を起動すると回復不可能なエラーが起きました」となります。
(2000/07/22 1.62+用に改訂)
emx関係の DLL が 0.9d FIX0203 以降であることを確認してください。これ以前のバージョンでは動作しません。また、DLL は emxrt.zip に含まれているもの全てが必要です。LIBPATH のディレクトリにあるか、チェックしてください。emxrev コマンドを実行して が出ればOkです。1.60 以降のバージョンのインストーラーでは、このリビジョンをチェックしますので、デスクトップにアイコンを登録しない場合でも、怪しいと思ったら、実行してみてください。(なお、1.60 のインストーラーはバグがあって、リビジョンがあっていても、同じ DLL が複数あると、Warning を出してしまいます)
NYAOS を起動すると「canna.dll loaded.」の後に「Abnormal program termination」と表示して、コアダンプして起動しません。
1.60 以前で、canna.dll が LIBPATH にあって、ネットワークが使えないとこのような事になります。1.61 ではこのようなことが起きないよう、修正されています。1.60以前では「OS/2システム」→「システム設定」→「TCP/IP構成」の「ホスト名」の2ページ目で、「127.0.0.1 loopback」を追加してみてください。すると少なくとも「かな漢字変換サーバと通信できません」というエラーは出るものの、一応、起動するようになります原因は、かんなのクライアント用ライブラリーのバグです(というか、UNIXの場合、loopback さえ使えない環境など、まずないので、バグというと酷なのですが)。

バグちゃうんか篇

‘かんな’が使えません。
そりゃ、いかんなぁ かんな関係のソフトウェアは、 上野 博さんが OS/2 にポーティングされています。
「+」を名前に含むファイルの補完が出来ません。
1.58以前の NYAOS ではデフォルトで「+」が補完対象外文字となっています。最新版に置き換えて、環境(シェル)変数 NOTPATHCHARに「+」が含まれないようにしてください。
逆クォートなどで、コマンドラインに長い文字を展開すると、「このセッション内のプログラムに問題が起き, 続行できません」というエラーになります。
NYAOS のせいではありません。CMD.EXE が受けつける、コマンドラインの長さを超えている為です。NYAOS 自身の内蔵コマンドではこのようなことにはなりません。
パイプを多く連結すると 「コマンド処理に必要なメモリーが足りません」等のエラーが出ます。
パイプ処理は基本的に CMD.EXE に任せているので、NYAOS の責任ではありませんCMD.EXE で実行しても同様の結果になるはずです。
何百文字も入力して、Enter を押すと、NYAOS が落ちます
1.60 までのバグです。1.61 では修正されています。
内蔵ls で「ls | more」とした場合、Ctrl-C で中断することができません。
バグですが、現在の NYAOS ではどうしようもありません。NYAOS が Ctrl-C を禁止させているためです。回避策として「ls -P」「ls | karl」を代わりに使うか、Ctrl-Pause(Break)で終了させるという手があります。ただし、Ctrl-Pause は入力するタイミングを誤ると、NYAOS 自体を終了させてしまいますので、注意が必要です。
コマンドライン編集中、行末で倍角文字を表示すると、以後の文字の表示位置がおかしくなります。
設計上の制限です。NYAOS 1.xx ではどうしようもありません。 折り返しをしない NYAOS-2 では解決しています。
画面をクリアするコマンドを実行すると、画面最上段でプロンプトとロゴが衝突します
NYAOS 1.61 で修正されています。
wget で取り込んだ、チルダ(~)で始まるディレクトリへ移動できません
~foo というディレクトリ名の場合、「cd ./~foo」などとカレントディレクトリ名「./」を足してみてください。NYAOS のチルダ変換は、空白の直後のチルダにしか働きません。
環境変数を設定するコマンドファイルがうまく実行されません
そういう仕様です。コマンドファイルは、子プロセスの CMD.EXE 内で実行されるので、ここで環境変数を設定しても、NYAOS 内に反映されません。source コマンドを使うか、nyaos.rc なりに記述してください。
source コマンドでコマンドファイルを読み込みましたが、 if分・goto 文や for文でエラーになります。
そういう仕様です。source コマンドでは、goto はサポートしていませんし、for文も若干文法が変わっています。環境変数を定義するコマンドファイルで、分岐などを行いたい時は、コマンドファイルを REXX で記述してください。REXX については、フルサポートしているはずです。(って、REXX.DLL に放り込んでいるだけですが) NYAOS-II では、ある程度、解決しています。
カレントディレクトリが pushd できません
pushd .」してください。ただの「pushd」でカレントディレクトリをpushdしたい場合は「alias pushd="pushd %* ."」しませふ。
一度呼び出した履歴を、編集しようとしてから、別の履歴の方がいいと判断して、上下矢印キーを押しても、履歴を呼び出せません (2000/3/12 追加)
二回目の履歴参照の際には、おそらく単語単位での履歴参照モードにに入ってしまっていると思われます。単語単位の履歴参照は、Vz互換履歴参照機能(vz_prev_history, vz_next_history)だけにある機能ですので、tcsh互換のものに差し換えることで、解決できると思います。具体的には「bindkey UP prev_history」「bindkey DOWN next_history」を実行すればokです。
とにかくバグが出たぞ〜
作者に遠慮なく連絡してください。ただし、状況の把握を迅速にするため 等も書き添えてください。また、本当にバグかという確信がなくても遠慮はいりません。仮にそれがバグではなくて、仕様であったにせよ、マニュアルや本FAQに反映することが出来ますし、何より、作者の自尊心をくすぐることが出来、今後の製作意欲にガソリンを投じることが出来ます(バグが出て、自尊心も糞もなかろう(笑))。

わがまま篇

キーバインドをワードスターライク(Vzっぽく)できませんか?
「nyaos -z」で起動するか、実行中に「bind vz」とタイプしてください。 ちあきさん作のVzライクなエディター KashEDIT をお持ちならば、「hotkey ESCAPE "ke.exe"」と設定すると、幸せになれるかもしれません。
MOVE や COPY、DIR で、ディレクトリ区切り文字に「/」を使いたいんですが
alias の「%@」マクロを使ってalias move="move %@"alias copy="copy %@"などと定義してください。%@ マクロは、引数の「/」を「¥」へ、引数先頭の「-」(マイナス)を「/」へ変換します。
ヒストリ内容を、別の NYAOS へコピーしたいんですが
複写元のNYAOSで「history > temp」で、ファイルへヒストリを出力してから、複写先のNYAOSで「source -h temp」で取り込んでください。これが面倒ならば「hotkey F11 "history > ~/.history"」「hotkey F12 "source -h ~/.history"」などとnyaos.rc で定義しておけば、2キーで移し換えが出来ます。(^C が画面に表示されるのはバグです。1.60では修正されています)
ヒストリ内容を、NYAOS 終了時に自動保存させたいんですが…
let atexit="history > ~/.history"」と定義すれば、終了時に ~/.history というファイルにヒストリが自動保存されます。
NYAOS は、bash や csh のようにワイルドカード展開をしてくれないのですか?
常に展開を行わせることはできません。なぜなら rename コマンドによる拡張子一括変換が使えなくなるなど、弊害があるからです。コマンド単位でワイルドカードの展開の指定ならば、alias foo="foo %+*"」などと定義すれば可能です。alias での %+* はワイルドカード展開をさせるマクロです。スラッシュなどの変換も同時に行う「%+@」等もあります。詳しくは、NYAOS.DOCを参照ください。
プロンプトに NYAOS の拡張マクロを使用すると、何かのタイミングで CMD.EXE を使う時にみっともなくなります。
環境変数は PROMPT ではなく、NYAOSPROMPT を使ってください。あるいは「let PROMPT=...」とする手もあります。
COPY命令でのファイルの連結(COPY ファイル名1+ファイル名2+…)や、SET PATH=などでのディレクトリの列挙で、パス名の補完をしたいのですが
let NOTPATHCHAR="+;"」を実行してください。 そうすれば、「+」や「;」が補完対象文字から除かれます。つまり、補完の際に空白と同じような扱いをされるということです。ただし、これは NYAOS 1.59 以降の機能です。
外部コマンドによって、カレントディレクトリを変更したいのですが… (2000/07/08 改訂)
原則的には出来ません。 1.62+(2000/07/22版スナップショット)より出来るようになりました。名前付きパイプに「cd ディレクトリ名」などという文字列を渡すと、NYAOS のカレントディレクトリを変更することができます。パイプのパス名は環境変数PIPE2NYAOS にが格納されています。詳しくは、マニュアルの「8.子プロセスからの環境操作」の節をお読みください。
source を使わず、外部コマンドによって、環境変数を変更したいのですが… (2000/07/08 改訂)
カレントディレクトリの変更と同様の方法で可能です。パイプに「set 環境変数名=値」という文字列を %PIPE2NYAOS% の示す名前付きパイプへ書き込んでください。
		echo set 環境変数名=値 > %PIPE2NYAOS%
	
ファイラーやエディターより NYAOS を呼び出すと、画面をクリアしてしまうので、それまで表示していた情報が消えてしまいます。 (1999/12/16 追加)
nyaos -q」すれば、画面クリアもしませんし、NYAOS のロゴも表示されません。nyaos.rc 内の命令が何か表示したりしますが、それくらいは「> nul」をくっつけるなりして自分で処置しましょう。 「canna.dll loaded.」の表示も、1.61 以降では nyaos -q で表示を抑制されます。
COMSPEC に NYAOS を指定したいんですが、可能ですか? (2000/2/5 追加)
可能です。ただし、推奨はしません。 環境変数 EMXSHELL に CMD.EXE のパスを指定しておいてください。
他のプログラムを起動した時にタイトルバーを変化させて欲しいのですが (2000/5/25 追加)
今のところ、ちゃんとしたやり方が分かりません。API は分かっているのですが、特殊なケースでしか、実際にタイトル文字列を変えられないようです。その特殊なケースとは、NYAOSの起動アイコンにアイコンタイトルが無い場合などがあります。タイトル文字を動的に変える、いい方法があれば、どなたか教えてください。

その他

ソースをダウンロードしても、展開できません (2000/3/12 変更)
以前はベクター社のサーバーが .bz2 拡張子のファイルをアスキー転送していましたので、Netscape 4.xx では正常にダウンロードできませんでしたが、現在は大丈夫なはずです。駄目な場合、作者まで御連絡ください。
作者にメールを送っても、エラーメールが帰ってきてしまいます。
以前、サポートアドレスとして公表していた iya-hayamatta@ijk.com に送っていただいた場合、 そちらの SMTPサーバの設定によっては、作者の元にメールが届かず、 エラーメールとして跳ね返されてしまう場合があります (ijk.comによると SPAMメール防止策だそうですが…)。 iyamatta.hayama@nifty.ne.jpをご利用ください。
作者にメールを出したんですが、音沙汰ありません
もう2,3日待ってこなかったら、すみませんが、もう一度メールしてください。 眠いもんだから、結構、メールの返事が遅くなることが多いんです。 ごめんなさい。
作者にメールを出して、要望を伝え、返事ももらったのに、 未だ依頼した機能が実現されていません
返信メールで「それはちょっと難しいです」とか言っていなければ、 まず「忘れています」。催促しませふ。
改良パッチを作ったんですが…
とっととよこせ!なーんてね。 でも、今までパッチを送ってくれた方って、 かの Altair★先生 だけなの…。
NYAOS、はっきり言って、重たいです。
うるせぇ。 原因としては、 などがあります。一部 DLL化、コマンドの削減、CMD.EXE などの独立など考えていますが、 実現の目途は立っていません。