The Documnent of
Nihongo Yet Another Os/2 Shell
┏┓┳┳ ┳┏━┓┏━┓┏━┓
┃┃┃┗━┫┣━┫┃ ┃┗━┓
┻┗┛┗━┛┻ ┻┗━┛┗━┛
Free Software
- Nihongo Yet Another Os/2 Shell -
1996-2000 (c) HAYAMA,Kaoru
目次
- 1.はじめに
- 1.1 NYAOSとは!?
- 1.2 必要なソフトウェア
- 2.使用方法
- 2.1 インストール
- 2.2 起動方法
- 3.キー操作
- 3.1 デフォルトの操作
- 3.2 Vz互換ヒストリの使い方
- 3.3 Wordstarモード
- 3.4 変換型ファイル名補完
- 4.内蔵コマンドリファレンス
- alias ,
bind
bindkey ,
cd ,
cds ,
comment ,
dirs ,
drvalias ,
echo ,
exec ,
exit ,
foreach ,
history ,
hotkey ,
lecho ,
let ,
ls ,
open ,
option ,
pushd ,
popd ,
pwd ,
rehash ,
source ,
unalias ,
which
- 5.置換
- 5.1 「...」「....」
- 5.2 ヒストリ(履歴)を参照する置換
- 5.3 環境変数(シェル変数)を参照する置換
- 5.4 シングルクォートの変換
- 5.5 逆クォートの置換
- 5.6 命令の区切文字に関する置換
- 5.7 拡張プロンプト
- 5.8 拡張リダイレクト
- 6.スクリプト実行支援
- 6.1 UNIX(#!)型スクリプト
- 6.2 COM(SOS)型スクリプト
- 6.3 Java アプリケーション
- 7.シェル変数
- 8.子プロセスからの環境操作
- 9.製作動機
- 10.制限事項
- 11.最後に
なお、変更履歴についてはファイルhistory参照のこと。
NYAOS(Nihongo Yet Another Os/2 Shell)は、 tcshの操作性と、YAOSの実装方法を参考に、「日本語バッチソ」をモット−としつつも、便利なものは何でもとり入れようという無節操な姿勢で製作された、OS/2用コマンドラインシェルです。
主な特徴:
- カスタマイズ可能な編集機能(tcsh型/Vz型)
- コマンドファイル(*.CMD,REXX)と共存可能な「#!」型スクリプトの実行機能
- DOS の SOSスクリプトをシームレスに実行
- コマンドラインからファイルをWP-Objectとして開く事ができる
(open命令)。
- ファイル名/コマンド名補完機能(tcsh型/DOS型)
- 拡張属性.LONGNAME/.COMMENTも表示できる内蔵カラー
ls
- 履歴機能(Vz/bash/tcsh型)
- 別名機能(alias)。命令毎にワイルドカードの展開指定可能
- 拡張chdirとディレクトリスタック(pushd/popd/dirs命令)
- csh ライクな foreach
- 「&」「|&」「;」「~」「`」「'」を csh 的に解釈。
- 「~:」をブートドライブ文字へ、「...」を「..\..」へ置換
- 拡張プロンプト(多ドライブのカレントディレクトリ,ヒストリ番号 etc )
- xterm , 外部からのtelnet , Mule の Shellモードでも使用できる。
- 「かんな」による日本語入力サポート(canna.dll他が必要)
- 拡張set(重複チェック付加算)。
NYAOS を利用するには次のソフトウェアが必要です。
- IBM OS/2 Warp J4
- emx ランタイムDLL
emx 0.9d FIX03 以降の emxrt.zip に含まれる
- emx.dll
- emxlibcs.dll
- emxwarp.dll
を CONFIG.SYS の LIBPATH の差すディレクトリの一つに置いておく必要があります。
かな漢字変換システム「かんな」を NYAOS から利用するには、以下が必要です。
- OS/2用かんな
OS2CANNA.ZIP を展開。ドキュメントに従って、インストールしてください。
- OS/2用かんなクライアント用DLL
OS2CAN-C.ZIP(タイムスタンプ 98/3/13以降)に含まれる canna.dll
を CONFIG.SYS の LIBPATH の差すディレクトリの一つに置いておく必要があります。
install.cmd を実行すると、
- NYAOS に必要な DLL ファイルの存在のチェック。
- デスクトップへのアイコン登録(ウインドウ表示と全画面表示)。
が行なわれます。特にファイルのコピーなどは行われません。かんなを使うには、さらに次のような操作が必要です。
- かんな 本体をインストール(cannaserver を動かす)
- LIBPATH の差すディレクトリの一つへ canna.dll をコピー
- nyaos.rc に「set CANNAHOST=かんなホスト名」という行を加える
(*) ホームディレクトリ…環境変数 HOME の差すディレクトリ
なお、カスタマイズファイルが見付からないなどのエラーが生じる場合はnyaos.rc に
set CANNYA=<かんなシステムのドライブ>[,<カスタマイズファイル名>]
という定義を加えるなどしてください。カスタマイズファイル名は省略できます。なお、NYAOS はカスタマイズファイルを
- %CANNYA%のファイル名
- %HOME%/.canna
- %CANNYA%のドライブの /usr/local/canna/lib/default.canna
- %SCRIPTPATH%のドライブの /usr/local/canna/lib/default.canna
の順に探します。
- NYAOSアイコンをダブルクリックする。
- NYAOSアイコンにフォルダーをドロップする。
- OS/2 プロンプトから 「(パス名)nyaos↓」と入力する。
のいずれの方法でも NYAOS を起動させることができます。
なお、NYAOS のコマンドラインパラメーターは以下の通りです。
NYAOS {-オプション} [起動ディレクトリ] ↓
で起動します。起動オプションは次のようなものがあります。
- {/k|-k} command
- commandを実行後、プロンプトを表示します。
タイトルロゴは表示しません。
nyaos.rc / .nyaos / _nyaos を読み込みません。
- {/c|-c} command
- commandを実行して、即、終了します。
タイトルロゴは表示しません。
nyaos.rc / .nyaos / _nyaos を読み込みません。
- {/q|-q}
- タイトルロゴを表示させません。
- {/f|-f}
- nyaos.rc / .nyaos / _nyaos を実行させません。
- {/g|-g} WxH (W,Hは十進数,「x」は半角英小文字)
- ウインドウサイズをW桁H行にします。「mode coW,H」を最初に実行するだけなので、プロンプト窓を最大化(Shiftを押しながら、タイトルバーをダブルクリックすればよかったっけ)していないと意味がありません。
- {-h|/h} ディレクトリ
- ホームディレクトリを指定し、環境変数HOMEに反映させます。-c や -k
の前に指定してください。
- -z
キーバインドを WordStar ライクにします。「nyaos -k "bind ws"」と同じです。
NYAOS は起動時に次の順にファイルを検索して、最初に見付けたものを実行します。
カレントディレクトリの .nyaos → _nyaos → nyaos.rc
→ ホームディレクトリの .nyaos → _nyaos → nyaos.rc
これらは REXX でも記述できます(誰もやらんか(笑))
基本的に tcsh をベースに Vz ライクなヒストリを交えたキーバインドとなっていますが、次のコマンドで変更することができます。
- bind tcsh
- ヒストリ参照も、tcsh と同じにします。
- bind ws
- ダイヤモンドカーソルをベースとしたバインドに変更します。「nyaos -z」で起動した場合と同じです。
- bind nyaos
- デフォルトのバインドへ戻します。
「C-」はCTRLキ−と同時に押すことを示します。
- C-m Enter
- 入力終結
- C-f →
- カーソルを右へ移動
- C-b ←
- 左へ移動
- Delete
- カーソル上の文字を削除
- C-d
- カーソル上の文字を削除。末尾では補完候補ファイル一覧
-
- オプションで NYAOS を終了する。
- Insert
- 上書きモードと挿入モードを切り換えます。
- C-h BS
- カーソル前の文字を削除
- C-a Home
- カーソルを入力文字列先頭へ移動
- C-e End
- カーソルを入力文字列末尾へ移動
- C-u Esc
- 入力文字列をキャンセル
- C-k
- カーソル以降の文字を削除(クリップボードへもコピー)
- C-p ↑
- ヒストリ参照 過去方向(Vz型)
- C-n ↓
- 未来方向(Vz型)
- C-r
- 過去方向(bash型インクリメンタルサーチ)
- C-s
- 未来方向(bash型インクリメンタルサーチ)
- C-l
- 画面クリア
- C-t
- カーソル左の二文字を入れ換える。
- Alt-f
- カーソルを次の単語の先頭へ
- Alt-b
- カーソルを今の単語の先頭へ
- C-i Tab
- TCSH型のファイル名補完 (二回打つと、候補ファイル一覧)
- C-Tab Alt-Enter
- 変換型のファイル名補完
- C-v
- 続いて入力される制御文字をそのまま受け入れます(^@ 除く)
- F1
- ファイル名をフルパスへ変換する
- F2
- ファイル名をURL形式("file://c|〜")へ変換する。
- C-Space
- カーソル位置にマークをつけます。
- C-w Alt-X C-Del
- マークからカーソル位置までのクリップボードへコピーした後に削除します。
- Alt-w Alt-C C-Ins
- マークからカーソル位置までをクリップボードへコピーします。
- C-y Alt-V Alt-Ins
- クリップボードの内容をペーストします。
コマンド名の入力途中で C-p をタイプすると、それまで入力した文字列を含む入力行の残り全てが呼び出されます。(以下 ■ はカーソル)
[C:/] echo ahaha ihihi ufufu
[C:/] ec■
↓[C-p]
[C:/] echo ahaha ihihi ufufu■
引数の入力中に C-p をタイプすると、過去に入力した引数を呼び出します。
[C:/] echo ufufu
[C:/] echo ahaha ihihi
[C:/] echo ■
↓[C-p] ↑[C-n]
[C:/] echo ahaha■
↓[C-p] ↑[C-n]
[C:/] echo ihihi■
↓[C-p] ↑[C-n]
[C:/] echo ufufu■
:
「bind ws」と入力すると、次のようなキーバインドで編集することができます。なお「^」はCTRLキ−を同時に押すことを示します。
- ^M Enter
- 入力終結
- ^D →
- カーソルを右へ移動
- ^S ←
- カーソルを左へ移動
- ^G Delete
- カーソル上の文字を削除
- ^H BS
- カーソル前の文字を削除
- ^I Tab
- ファイル名補完 (二回打つと、候補ファイル一覧)
- ^A Home
- カーソルを入力文字列先頭へ移動
- End
- カーソルを入力文字列末尾へ移動
- ^U Esc
- 入力文字列をキャンセル
- ^E ↑
- ヒストリ参照 過去方向(Vz型)
- ^X ↓
- 未来方向(Vz型)
- ^L
- 画面クリア
- ^F
- カーソルを次の単語の先頭へ
- ^A
- カーソルを今の単語の先頭へ
- ^Tab Alt-Enter
- 変換型のファイル名補完
- ^V
- 続いて入力される制御文字をそのまま受け入れます。(^@除く)
- F1
- ファイル名をフルパスへ変換する
- F2
- ファイル名をURL形式("file://c|〜")へ変換する。
- ^B
- カーソル位置にマークをつけます。
- ^Y Alt-X ^Del
- マークからカーソル位置までのクリップボードへコピーした後に削除します。
- ^K Alt-C ^Ins
- マークからカーソル位置までをクリップボードへコピーします。
- ^J Alt-V Alt-Ins
- クリップボードの内容をペーストします。
Ctrl-TAB , ALT-RETURN での補完では、最初のキー操作以降、次のようなキーでファイル名を選択します。
- ↓ C-t C-TAB TAB ALT-RETURN
- 次候補
- ↑ ALT-BACKSPACE
- 前候補
- ← C-g ESC
- キャンセル
- → C-m Enter
- 候補を確定する。
- その他
- 候補を確定後、キーの機能を実行する。
NYAOS では通常 CMD.EXE で使えるコマンドの他に、次のような内蔵コマンドが利用できます。
構文1:alias 別名 [[=] "置き換える構文"]
別名を登録します。置き換える構文は範囲を明示する為に引用符で囲んでください。引数が無い場合、それまで定義した別名の一覧を表示します。置き換える構文中には、次のマクロが使えます。構文を省略した時は、既存の別名の定義内容を表示します。
- %n
- n番目の引数 (nは数字)
- %*
- 引数全体
- %n*
- n番目以降の引数
- %n:h
- n番目の引数のディレクトリ部分
- %n:t
- n番目の引数のディレクトリ以外の部分
- %n:r
- n番目の引数の拡張子以外の部分
- %n:e
- n番目の引数の拡張子部分
- %@,%n@
- 基本的に「%*」,「%n*」と同じですが、次のような置換をします。
- 引数の先頭の「-」を「/」に置換。
- 引用符に囲まれていない「/」を「\」に置換。
- 引数の末尾が「/」「\」ならば、「.」を追加。
これらは主に、move や copy など OS/2風のオプション指定文字(/)、パス区切文字(\)しか使えないコマンドで、UNIX風の同文字(-,/)を使いたい場合などに使います。該当するコマンドは .nyaos などで
alias dir=dir %@
alias copy=copy %@
alias move=move %@
と指定しておけばよいでしょう。
- %\
- 直前の文字が「\」や「/」なら空文字列へ、さもなければ「\」へ
- %/
- 直前の文字が「\」や「/」なら空文字列へ、さもなければ「/」へ
- %+* , %+n* , %+@ , %+n@ %+n
- ワイルドカードを展開する他は、%* , %n* , %@ , %n@ , %nと同じです。展開できるワイルドカードは今のところ * と ?だけです。
- ""(連続する二つの引用符)
- 一つの引用符に置換します。
[E:/] alias foo="echo ""ahaha"""
[E:/] alias
foo=echo "ahaha"
構文2:alias -s
alias の一覧を、それぞれ「alias 別名="内容"」という形式に直して、標準出力に出力します。これをリダイレクトしておけば、alias のセーブすることができます。別の NYAOS などで、ロードするには、リダイレクトしたファイルをそのまま source すればOk です。
キ−バインドを一括変更します。wsはwordstar系です。
キ−に個別に機能を割り当てます。キ−の名前として次のものが使えます。
ALT_0 ALT_1 ALT_2 ALT_3
ALT_4 ALT_5 ALT_6 ALT_7
ALT_8 ALT_9 ALT_A ALT_B
ALT_BACKSLASH ALT_BACKSPACE ALT_C ALT_COMMA
ALT_D ALT_DEL ALT_DOWN ALT_E
ALT_END ALT_EQUAL ALT_ESC ALT_F
ALT_F1 ALT_F10 ALT_F11 ALT_F12
ALT_F2 ALT_F3 ALT_F4 ALT_F5
ALT_F6 ALT_F7 ALT_F8 ALT_F9
ALT_G ALT_H ALT_HOME ALT_I
ALT_INS ALT_J ALT_K ALT_L
ALT_LEFT ALT_LEFT_BRACKET ALT_LEFT_QUOTE
ALT_M ALT_MINUS ALT_N ALT_O
ALT_P ALT_PAD_ASTERISK ALT_PAD_ENTER
ALT_PAD_MINUS ALT_PAD_PLUS ALT_PAD_SLASH ALT_PAGEDOWN
ALT_PAGEUP ALT_PERIOD ALT_Q ALT_R
ALT_RETURN ALT_RIGHT ALT_RIGHT_BRACKET
ALT_RIGHT_QUOTE ALT_S ALT_SEMICOLON ALT_SLASH
ALT_SPACE ALT_T ALT_TAB ALT_U
ALT_UP ALT_V ALT_W ALT_X
ALT_Y ALT_Z BACKSPACE BACKTAB
CENTER CTRL_A CTRL_AT CTRL_B
CTRL_C CTRL_CENTER CTRL_D CTRL_DEL
CTRL_DOWN CTRL_E CTRL_END CTRL_F
CTRL_F1 CTRL_F10 CTRL_F11 CTRL_F12
CTRL_F2 CTRL_F3 CTRL_F4 CTRL_F5
CTRL_F6 CTRL_F7 CTRL_F8 CTRL_F9
CTRL_G CTRL_H CTRL_HOME CTRL_I
CTRL_INS CTRL_J CTRL_K CTRL_L
CTRL_LEFT CTRL_M CTRL_N CTRL_O
CTRL_P CTRL_PAD_ASTERISK CTRL_PAD_MINUS
CTRL_PAD_PLUS CTRL_PAD_SLASH CTRL_PAGEDOWN CTRL_PAGEUP
CTRL_PRTSC CTRL_Q CTRL_R CTRL_RIGHT
CTRL_S CTRL_SPACE CTRL_T CTRL_TAB
CTRL_U CTRL_UP CTRL_V CTRL_W
CTRL_X CTRL_Y CTRL_Z DEL
DOWN END ENTER ESCAPE
F1 F10 F11 F12
F2 F3 F4 F5
F6 F7 F8 F9
HOME INS LEFT PAGEDOWN
PAGEUP RETURN RIGHT SHIFT_DEL
SHIFT_F1 SHIFT_F10 SHIFT_F11 SHIFT_F12
SHIFT_F2 SHIFT_F3 SHIFT_F4 SHIFT_F5
SHIFT_F6 SHIFT_F7 SHIFT_F8 SHIFT_F9
SHIFT_INS SPACE TAB UP
機能名としては次のものが使えます。
accept_line , newline 入力終結
backward_char カ−ソルを左へ移動
backward_delete_char カ−ソルの左の文字を削除
backward_word 前の単語の先頭へ移動
beginning_of_line 先頭へ移動
bye NYAOS終了
clear_screen 画面消去&再表示
complete TCSH型補完/補完リスト
complete_first 変換型補完:最初の候補
complete_to_fullpath フルパスへの変換
complete_to_url URL形式への変換
copy マーク〜カーソル間の文字列を
クリップボードへ複写
cut マーク〜カーソル間の文字列を
クリップボードへ移動
delete_char カ−ソル位置の文字を削除
delete_char_or_list 一字削除/補完リスト
end_of_line 末尾へ移動
forward_char カ−ソルを右へ移動
forward_word 次の単語の先頭へ移動
kill_line カ−ソル以降の文字を削除
kill_top_of_line カーソル以前の文字を削除
kill_whole_line 入力文字全廃棄
mark カーソル位置をマークする
next_history , down_history
最近の履歴参照
paste クリップボードの内容を挿入する。
previous_history , up_history
過去の履歴参照
quoted_insert 制御文字の入力
vz_prev_history Vz型の履歴参照(過去方向)
vz_next_history (未来方向)
self_insert 表示可能文字なら一字挿入
さもなければ何もしない
i_search インクリメンタルサーチによる過去の履歴参照
rev_i_search インクリメンタルサーチによる最近の履歴参照
swapchars カーソル左の二文字を入れ換える。
次の機能は、変換型補完モードでのみ割り振られますので、上に上げた機能と同じキーに設定することができます。
complete_fix 補完内容確定
complete_next 次の補完候補へ
complete_prev 前の補完候補へ
complete_cancel 補完結果をキャンセル
complete_default 確定後、そのキーの一般モードでの
機能を呼び出します。
・cd [-p] ディレクトリ名
カレントディレクトリを変更します。ディレクトリ名を省略した場合、「option +cd_goto_home」が実行されていれば、環境変数HOMEの示すディレクトリへ移動。さもなければ、カレントディレクトリ名を表示します。ディレクトリ名として「-」を指定すると、直前のディレクトリへ移動します。
- -p
- ディレクトリが存在しない場合、環境変数CDPATHで指定されるディレクトリ下も検索します。デフォルトにしたい場合はalias cd="cd -p"を実行してください。
・cds dir-1 dir-2
・cd {-s|-t} dir-1 [dir-2] ...
「cd e:/usr/local/bin」のように長い絶対パスを入力を「cds u lo b」のように、途中の経由ディレクトリ名を短縮して書くことができます。パスは空白で区切り、対象のドライブを「set cdshort=e: i: c:」と設定しておく必要があります。「cd -s」は cds と等価です。
「cd -t」は基本的に「cds」と同じですが、部分ディレクトリ名は、ディレクトリ名の先頭からしかマッチしません。つまり、\os2\boot に対し、「cd -s 2 b」や「cds 2 b」では移動できますが、「cd -t 2 b」ではできません。
カレントディレクトリとディレクトリスタックの内容を表示します。詳しくは「pushd」参照のこと。
- -v
- ディレクトリスタックを「番号 ディレクトリ」の形式で一覧します。
以後、ドライブ文字drv1をドライブ文字drv2へ変換します。ドライブ文字のエイリアスと考えてください。
次のような文字列は、後に続く文字に変換して出力されます。
^a … ベル
^n … 改行復帰文字
^v … 垂直タブ
^r … 復帰文字
^f … 改頁文字
^e … ESC(0x1b)文字
^c … そこで出力を打切り、改行せずに終わる
""(連続する二つの引用符) , ^q
… 単一の「"」(^" は廃止しました)
^^ … 「^」
^033 ^0 など「^」の後に3桁以内の8進数
… その8進数をASCIIコ−ドとする文字
CMD.EXE native の echo とは違い、単一の引用符は表示されません。
(注) 以上の機能は、echo を先頭で使った場合のみ有効です。
[E:] echo "aha""ha" & echo "ufu""fu"
と入力した場合、後者の echo は CMD.EXE 内蔵版 echoが呼び出されますので、画面には、
aha"ha
"ufu""fu"
と表示されます。(それにしても、例外が多いプログラムだなぁ...)
・exec コマンド名 {引数}
NYAOS を終了し、かわりにコマンドを起動します。
NYAOSを終了します。
・foreach [-ivn] 変数名 値-1 値-2 ... 値-n
:
end
同じコマンド(群)を引数を変えながら実行するときに利用します。cshのforeachと違い、名前-1...名前-n を括弧で囲んではいけません。また、ネストもできません。
foreach を実行すると「?」、あるいは、環境変数NYAOSPROMPT2で指示したプロンプトを表示して端末からのコマンド行入力を促しますので、繰り返すコマンドを入力してください。コマンドは複数実行が可能なので、それらを逐次入力後、「end」か「^Z」の入力をもって、終了してください。
「source」や「-k」オプションで読み込まれるファイル中で使用するときは、コマンドは端末からではなく、そのファイルの続く行から取り込まれます。繰り返しコマンドの後には end行をおいてください。なお、REXXでファイルが記述されている場合、foreach は使えませんので、かわりに REXX命令のDO..ENDを使ってください。
コマンド行中の「$」+ 変数名 を 名前-1...名前-n に順に置換して実行します。「$」の後の変数名が、foreach 直後の引数と異なる場合、環境変数とみなします。変数名は「${変数名}」「$(変数名)」「%変数名%」と書いても構いません。
変数名の直後に以下の修飾子を置いて、
文字列の一部を抽出することもできます。
$i:h or %i:h% … $i のディレクトリ部分を取り出す。
$i:t or %i:t% … $i のディレクトリ部分以外を取り出す。
$i:r or %i:r% … $i の拡張子を除いた部分を取り出す。
$i:e or %i:e% … $i の拡張子を取り出す。
一連の繰り返し命令の出力をリダイレクトする時は「^Z」で終了せず、
end > ファイル名
end | コマンド 引数 ...
で終了してください。
- -i
- コマンドのリターンコードが 0 でなくとも実行を中断しない。
- -n
- 実行すべきコマンドを(標準出力に)表示するだけで
実際には実行しない。
- -v
- 実行すべきコマンドを(標準エラー出力に)表示した後実行する。
保存されている、n回前までの履歴を表示します。nを指定しないと全ての履歴を表示します。これをリダイレクトして、ファイルに保存すると、別の nyaos で「source -h」によって読み込むことができます。
・hotkey キーの名前 プログラム名
キーに実行プログラムを割り当てます。
・lecho 引数1 引数2 ...
デバッグ用のコマンドです。引数がどのように評価されているのか確認できます。コマンド名自身がどのように置換されるかは、which を使って確認してください。
・let シェル変数名[=値] …
シェル変数に値を設定します。
詳細は「7.シェル変数」を参照ください。
・ls {-オプション} {ファイル/ディレクトリ名... }
カラー ls です。
| -a , --all |
HIDDEN属性、「.」で始まるファイルも表示する。 |
| -l |
サイズや変更日時も表示する。 |
| -B , --ignore-backups |
末尾がチルダのファイルを表示しない。 |
| -o , --color |
カラー表示(default) |
| -F , --classify |
ファイル名の末尾に / や * を付ける(default) |
| -R , --recursive |
ディレクトリを再帰的に表示する。 |
| -r , --reverse |
逆にソートする。 |
| -U |
ソートしない。 |
| -X |
拡張子でソートする。 |
| -S |
サイズ順にソート |
| -c |
ファイルを作成した日時でソート・表示する。 |
| -t |
最後に書き込みを行った日時でソート・表示する。 |
| -u |
最後にアクセスした日時でソート・表示する。 |
| (以下、独自オプション) |
| --longname |
ロングネーム(WPSでの名前)を表示 |
| -j , --subject |
.SUBJECT拡張属性を表示 |
| -H , --inline-comment |
一つ目のコメントをインラインで表示 |
| --multi-comment |
全コメントを表示 |
| -E |
「--subject --longname --inline-comment」と等価 |
| -P , --more |
1ページづつ表示 |
| -O , --no-color |
カラー表示を抑制します。 |
| -2 , --numeric-sort |
ファイル名中の数字を数値として比較してソート |
| -3 , --virge |
スクロールを3行ごとに行う。 |
| -_ , --ignore-underbar |
アンダーバーで始まるファイルを表示しない。 |
| -, |
ファイルサイズを三桁ごとに , で区切る。 |
上以外のオプションが指定された場合、外部の ls.exe を呼び出します。当然ながら、この場合、PATH上に ls.exe が必要となります。リダイレクト/パイプ出力する際は、デフォルトでカラー表示や、ファイル名の後に / や * といった文字を付加しません。必要な場合 -o や -F をつける必要があります。
オプションをデフォルト化するには、エイリアスを使って
alias ls="ls -o"
などと入力してください。
色の変更は、けんと(田村健人)氏のcolor-lsと同じで、次のように行います。
set LS_COLORS=xx=string:xx=string:xx=string...
設定項目(xx)は、以下のものがあります。
| 項目 | default | 設定する内容 |
| lc | \e[ | Left code |
| rc | m | Right code |
| ec | \e[0m | End code |
| fi | 1 | Normal file (以降 type code) |
| di | 32;1 | Directory |
| sy | 31;1 | System file |
| ro | 33;1 | Read-only file |
| hi | 44;37;1 | Hidden file |
| ex | 35;1 | Executable file |
| cm | 44;37;1 | コメントの色指定 |
| ln | 41;37;1 | WPSでの名前の色指定 |
| sj | 42:37;1 | サブジェクトの色指定 |
ファイルは
<left code> <type code> <right code> filename <end code>
と表示されます。
・open {-オプション} ファイル名
open {-オプション} "<オブジェクトID>"
open {-オプション} [オブジェクトID] ←省略可の[..]に非ず
ファイル、あるいは、オブジェクトをワークプレイスシェルで開きます。オブジェクトIDは不等号の<と>を含むので、二重引用符で囲むか、不等号<>を[]に置き換えて入力してください。ファイル名を省略すると、カレントディレクトリをフォルダとして開きます。
オプション:
| -p , -s |
プロパティー(設定ノートブック)を開きます。 |
| -i |
アイコン表示で開きます(*)。 |
| -t |
ツリー表示で開きます(*)。 |
| -d |
詳細表示で開きます(*)。 |
| -o xxxx |
xxxx で指定される形で開きます。 例えば「-i」は「-o ICON」と等価です。 |
(*) フォルダー/ディレクトリの場合のみです。
オプションを選択します。「option +echo」「option script」(以上有効化)「option -amp_start」(無効)というように指定します。オプションには次のようなものがあります。括弧内はデフォルトです。
- amp_detach (-)
-
「&」がコマンド末尾にあれば、裏のセッションで起動します(detach)。ただし、内蔵コマンドには働きません。amp_start より優先します。
- amp_start (+)
- 「&」がコマンド末尾にあれば、別のセッションで起動します(start)。ただし、内蔵コマンドには働きません。
- auto_close (+)
-
末尾に「&」を付けて、VIOプログラムを別セッション実行して、終了する時にウインドウを自動的にクローズさせます(start /F /C)。「option amp_start」が+でなければなりません。
- anywhere_history (+)
-
「!」による履歴置換機能をコマンドラインの先頭以外でも適用させます。
- backquote (+)
-
逆クォートによる置換を許可(+)/禁止(-)します。
- backquote_in_quote (-)
- 引用符の中の逆クォートの置換を許可します。
- beep (+)
- BEEP音を許可します。
- complete_etc (+)
- オプション文字列や<WP_START>なども補完候補に含めます。
- cd_goto_home (-)
- 「cd」だけの入力で、環境変数HOMEの示すディレクトリへ移動します。
- cmdlike_crlf (-)
- コマンド実行後、プロンプト表示前に改行します(CMD.EXE互換表示)。
- complete_hidden (-)
- HIDDEN属性のファイルを補完リストに入れます。
- complete_tail_slash (-)
- 補完時に加えるディレクトリの末尾を「\」ではなく「/」にします。
- complete_tilda (-)
- 末尾がチルダのファイルを補完リストに入れます。
- ctrl_d_eof (-)
- Ctrl+D で NYAOSを終了します。
- ctrl_z_eof (+)
- Ctrl+Z でNYAOSを終了します。
- debug (-)
- NYAOS の置換処理を逐次表示します。
- direct_key (-)
- 有効にすると、キー入力方法を変更します。
速くなるはずでしたが、速くなりません(笑)。
さらに、XFree86 上で動かなくなってしまいます。
- dots (+)
- 空白に続く...(3個以上のドット)を..\..の形式に変換します。
- echo (-)
- CMD.EXE に実際に渡される文字列を表示します。
- history_in_doublequote (-)
- ダブルクォート間の「!」もヒストリ変換します。
シングルクォート間の「!」はこのオプションに関わらず変換しません。
- honest (-)
- 有効にすると、終了時に かんな の Warning などを洗いざらい白状します。
- icanna (-)
- かんな変換をしないようにします。
- ignore_cases (+)
- 内臓コマンドの大文字・小文字を区別させません。
- noclobber (-)
- リダイレクトによるファイル上書きを禁止します。
チェックできるのは、直接キーボードからタイプしたファイル名だけで、source で読み込むファイル や nyaos.rc 、alias の内側に記述されたファイル名についてはノーチェックです(上書きされてしまいます)。このオプションが設定されている時に上書きするには「>!」「>>!」「2>!」などの記号を利用します。
- prompt_even_piped (+)
- 標準入力が端末でない場合でも、プロンプトを表示します(for Mule)。
- printexitvalue (+)
- 外部コマンドのエラーコードが非0の時、画面にその値を表示します。
- script (+)
- スクリプト実行支援機能を有効にします。
- script_cache (-)
- スクリプトに対し、実行する命令をキャッシングします。
- semicolon (+)
- 空白に続く「;」をstartを実行しない「&」に置換します。
- single_quote (-)
- シングルクォートをダブルクォートに置換します。シングルクォート内の文字列の評価ルールはダブルクォートと若干異なりますので、注意が必要です。
- slash_to_backslash_after_tilda (+)
- 空白に続くチルダ文字「~」より後の「/」を「\」に置換します。
次の tilda_home が ON になっている必要があります。
- sos (-)
- SOSスクリプトの実行を許可します。
- tilda_home (+)
- 空白に続くチルダ文字「~」を環境変数HOMEの値へ置き換えます。
- tilda_without_root (-)
- 直後に \ や / の続かないチルダを %HOME%\..\ に変換します。
- vio (+)
- VIOの機能を使用します。プロンプト表示後、VIOでカ−ソルを強制表示させ、Promptの$Iの前後のアトリビュートを保存します。
off(-)状態では、画面表示にはエスケ−プシ−ケンスしか使用しません。
なお、以上のオプションは NYAOS 起動の際に
nyaos --option+ (有効化)
nyaos --option- (無効化)
のように変更させることもできます。
現在のカレントディレクトリをスタックに保存し、指定したディレクトリへ移動します。cdpath や cd-short のオプションも cdと同様に使えます。ディレクトリ名を省略すると、カレントディレクトリとスタックトップを交換します。ディレクトリ名として「-」を指定すると、直前のディレクトリへ移動します。
- -v
- ディレクトリスタックを「番号 ディレクトリ」の形式で一覧します。
- +n
- ディレクトリスタックを回転させて、n番目のディレクトリをカレントディレクトリにします。
スタックのトップに保存されているディレクトリにchdirし、スタックトップを廃棄します。
- -v
- ディレクトリスタックを「番号 ディレクトリ」の形式で一覧します。
- +n(n:数字)
- n番目のスタックに移動する。
カレントディレクトリを表示します。
コマンド名補完・スクリプト実行の為のキャッシュを更新します。
オプションとしては次のようなものがあります。
- -n
- キャッシュが空の時だけ、キャッシュを読み込む。1.61 より、キャッシュを同一マシンで動く全 NYAOS のプロセスで共有するようになりました。そのため、nyaos.rc に「rehash」を入れておくと、せっかくキャッシュが読み込まれているのに、読み込み直すため、不経済です。かといって、入れないと、正真正銘の最初の補完の際に時間がかかってしまいます。「rehash -n」は、nyaos.rc 専用のオプションと考えればよいと思います。
- -q
- 寡黙になる
通常の set の機能に加え、「+=」という演算子が使えます。基本的に「set X+=A」は「set X=A;%X%」なのですが、「;」で区切られた要素の重複チェックも行います。
[C:\] set X=A;B;C
[C:\] set X+=C
[C:\] set X
C;A;B
PATHの設定などに便利なはずです。
・source{-h|-e} ファイル名 {引数}
ファイルに記述された環境設定やエイリアス定義を読み込みます。ファイルの最初の行を /*..*/ で始めれば、REXXで記述することもできます。この場合のみ、引数をARG関数などで参照できます。
- -h
- 過去に「history > ファイル名」で保存したヒストリを、現在の NYAOS のヒストリに読み込みます。
- -e
- エラーメッセージをファイルより読み込みます
別名を破棄します。詳しくは「alias」参照のこと。
実行されるコマンドの絶対パスを表示します。
エイリアスやスクリプトの場合は、置換の結果をまず表示します。
内蔵コマンドを使いたくない場合は、aliasで回避することができます。例えば、lsコマンドをもっと高機能な外部のlsと置き換えたい場合は、
alias ls=ls.exe
と別名定義してください。ただし、ls に限って言えば、未サポートのオプションを見付けた場合、自動的に外部の ls.exe を呼び出すので、特にalias の必要はありません。
NYAOS は入力文字列を様々に置換することによって、tcsh ライクな文法を実現しています。その一つ一つを以下で説明します。
空白に続く n個(n>2)のドットを次のように置換します。
... → ..\..
.... → ..\..\..
..... → ..\..\..\..
option -dots
でこの置換を抑制できます。
!! 一つ前の入力文字列へ
!n 最初から n 番目に入力文字列へ
!-n n 個前に入力した文字列へ
!str str から始まる、最も最近の入力文字列へ
!?str? str を含む、最も最近の入力文字列へ
- option
+anywhere_history
- 任意の位置の「!」を対象とする。
- option
-anywhere_history
- 先頭の「!」だけを対象とする。
ヒストリ置換には次のような語尾をつけることができます。
:0 コマンド名を引用する。
:m m 番目の引数だけを引用する。
:m-n m 番目から n番目までの引数を引用する。
:-n コマンド名と n 番目までの引数を引用する。
^ 最初の引数だけを抜き出す。
$ 最後の引数だけを抜き出す。
* 全ての引数を引用する。
なお、以上の語尾を ! の直後につけると、直前の入力に対する操作となります。
- %環境変数名% → その環境変数の内容
- %環境変数名:h% → 環境変数の中のパス名のディレクトリ部分
- %環境変数名:t% → 環境変数の中のパス名のディレクトリ以外の部分
- %環境変数名:r% → 環境変数の中のパス名の拡張子以外の部分
- %環境変数名:e% → 環境変数の中のパス名の拡張子部分
- %HOME% が x:\foo の時、
「~/bar」→「x:\foo\bar」
「~bar」 →「x:\foo\..\bar」
と置換します。また「~:」(チルダ+コロン)はブートドライブ名に置換します。
- option
(+/-)tilda_home
- チルダを置換する/しない。
- option
+slash_to_backslash_after_tilda
- チルダ以降の「/」を全て「\」へ変換する(括弧内参照)。
シングルクォートをダブルクォートに変換します。ただし、ダブルクォートにすでに囲まれているものは除きます。また、シングルクォートに囲まれているダブルクォートは、ダブルクォート二個に変換します。
逆クォート「`」で囲まれた文字列をコマンドとして実行して、その標準出力と置き換えます。ただし、逆クォート内に内蔵コマンドは置けません。逆クォート自身をコマンドに渡したい時は、逆クォートを二つ連続して書いてください。
- '..`〜`..' (シングルクォートに囲まれた逆クォート)
- → 置換しない。そのまま。
- "..`〜`.." (ダブルクォートに囲まれた逆クォート)
- → 〜の標準出力と置換する。
- ...`〜`... (クォートの類に囲まれていない逆クォート)
- → 〜の標準出力と置換する。ただし、複数の空白や改行文字などは
一個の空白となる。
- option
(+/-)backquote
- 逆クォートの置換を許可/禁止します。
- option
(+/-)backquote_in_quote
- 引用符内の逆クォートも対象に含める/含めない。
- 「A & B &」→ 「start A & start B」
- A,B をそれぞれ別のセッションで実行する。
option
amp_start を設定している際のみ有効です。
- 「A & B &」→ 「detach A & detach B」
- A,B をそれぞれ裏のセッションで実行する。
option
amp_detach を設定している際のみ有効です。
- 「A |& B 」→ 「A 2>&1 | B」
- A の標準出力・標準エラー出力を、Bの標準入力へパイプする。
- 「A ; B」,「A &; B」→ 「A & B」
- A , B を逐次実行します。option
amp_start を設定している時に「&」の
代わりに用います。前者はoption
semicolon を設定している場合のみ
有効で、かつ「;」の直前に一つ以上の空白が必要です。
これらの置換は、A,B は内部コマンドの場合、うまく実行されません。
通常のCMD.EXEでも使える文字に加えて、以下がシェル変数/環境変数PROMPTで使用できます。
| $ZA |
ベル |
| $ZH $! |
ヒストリ番号 |
| $ZV $@ |
カレントドライブのボリュームラベル |
| $ZP |
カレントディレクトリ(EAロングネームへの変換を行う) |
| $W |
カレントディレクトリ($HOME→「~」の変換を行う) |
| ${..} |
中括弧で囲まれた文字のドライブのカレントディレクトリを画面最上行に表示する。例: ${cdef} |
シェル変数PROMPT には、拡張マクロを使ったプロンプトを。
環境変数PROMPT には、CMD.EXE でも使えるマクロだけのプロンプトを定義することを
お薦めします。
[例]
let prompt=$w[$zh]
set prompt=[$p]
環境変数 NYAOSPROMPT も同様に使用できます。
CMD.EXE で通常使える「>」「>>」「2>」「2>>」「2&>1」「|」の他に次のようなものが使えます。
- >& ファイル名
- 標準出力・標準エラー出力ともに、一つのファイルへリダイレクトします。
- |& コマンド名
- 標準出力・標準エラー出力ともに、別のコマンドの標準入力へ接続します。
option +noclobberを用いると、リダイレクトで上書きを禁止することができます。
- >! ファイル名
- 2>! ファイル名
- >&! ファイル名
- 同名のファイルが既に存在しても、上書きします。「option noclobber」で、上書き禁止モードになっていても有効です。
UNIX(というか、そのシェル)では、
- テキストファイルの先頭を「#!」で始め、
- その直後にインタープリタのコマンド名、および、オプションを書き、
- そのテキストファイルの実行属性を立てて(chmod +x)
おけば、そのテキストファイル(スクリプト)をあたかも単独のコマンドであるかの
ように、実行する機能があります。
具体的には、例えば test.plというファイルが
#!/usr/local/bin/perl
という行で始まっている場合、
test.pl param-1 param-2 ...
という入力が
/usr/local/bin/perl test.pl param-1 param-2 ...
と等価になります。これを NYAOS に取り入れてみました。
UNIXとの違いは次のような点があります。
- 実行属性がファイルの基本属性にはないので、「#!」で始まるかどうかだけを調べている。
- スクリプトの検索は、環境変数PATHではなく、SCRIPTPATHで行う。
- 環境変数 SCRIPTDRIVE にドライブ名を定義しておけば、インタープリタ名が「\」ではなく「/」で始まっている場合に、そのドライブ名をインタープリタ名の前に挿入する。
- 拡張子を省略した場合、EXE , CMD , COM , 拡張子無しの順にファイルを検索する。
1.は拡張属性を用いてもよかったのですが、ディスクアクセスが増えるだけなので、見送りました。
2.は PATHを使うと、多くのディレクトリを検索しなければいけないので、ディスクアクセスの節約を考えた上の仕様です。
3.は、よく「#!/usr/local/bin/perl」と指定しているスクリプトに対する対応です。UNIXのスクリプトをそのまま使えるようにしました。
環境変数の定義の例を次に示します。
set SCRIPTPATH=.;e:/usr/script;e:/usr/bin
set SCRIPTDRIVE=e:
以上の置換の対象は、入力した最初の単語だけではなく、「|」や「&」の直後にも適用されるので、スクリプトのフィルタ的使用も可能です。
- (注意)
-
一度、実行したスクリプトについては、使用インタープリタ名を記憶し、次回以降、そちらを利用します。その為「#!」行を変更しても、実際の実行に反映されない場合があります。その際は「rehash」と入力してください。
NYAOS は SOS で作られたスクリプトを DOSプロンプトではなく、OS/2プロンプトで実行することも出来ます。SOS(Script language and Other
application execution Support)は、奈良女子大学の新出尚之先生の開発された、DOS上で「#!」相当の機能を実現するソフトウェアです。
SOSによるスクリプトは、もちろん OS/2 上でも動くのですが、見かけ上、COMファイルなので、実行の度に PC-DOS窓が開いてしまい、あまり美しく動作できるとは言えません。
そこで、NYAOS は
- 拡張子が COM である。
- そのファイルは、環境変数SCRIPTPATHが差すディレクトリ上に存在する
- 二行目の二文字目以降に「soshdr/Nide」という文字がある
- 最初の 14 行が全て表示可能文字であり、先頭の文字が #;%:' のいずれかである
場合、そのファイルを SOSスクリプトだと判断して、SOSヘッダの動作をOS/2 プロンプトでエミュレート(というほどのものではないが)する機能を追加しました。
基本動作は、「#!」形式のスクリプトと同じで、コマンドラインの置換で実現されています。この機能によって、DOS/OS/2共用のスクリプトを作ることができます。なお、拡張子「.com」の入力は省略できます。
Java アプリケーション XXX.class を実行する際、通常は「java XXX」と入力する必要があります。NYAOS では、これを単に「XXX.class」と入力して実行することができます。
一見、文字数が増えるので、メリットが無いように見えますが、1カラム目から CLASSファイル名を書くので、コマンド名補完が効きますので、TABキーだけで「.class」部分も入力でき、手間的には多少は楽になると思います。
なお、コマンド名補完は、環境変数 CLASSPATH にリストアップされている、ディレクトリ上の .class ファイルのみ有効です。zip/jar アーカイブの中までは検索しません。
なお、java コマンドに渡す引数は、環境(シェル)変数 JAVAOPT に設定してください。
シェル変数とは、NYAOS内でしか参照できない環境変数のようなものです。
NYAOS で用いる変数と、他の(NYAOSから呼び出される)アプリケーションで
使用する変数がバッティングしないように用意したものです。
シェル変数の設定には「let」を使います。
csh の set コマンドとほぼ同じように使います。
・シェル変数への代入:
let VAR1=VALUE1 VAR2=VALUE2 … ↓
「=」の前後に空白が入ってはいけません。
・シェル変数の参照:
let VAR1 VAR2 ↓
echo %VAR1% %VAR2% ↓
二番目の記法では環境変数と区別がつきません。
・定義されている全シェル変数の列挙
let ↓
・シェル変数の削除
let VAR1= ↓
従来の NYAOSの内蔵コマンドで、環境変数を参照するものは、全てシェル変数も参照するようになります。該当するシェル変数が未定義の場合、同名の環境変数を参照します。シェル変数名は大文字・小文字を区別しません。
特殊なシェル変数として次のようなものがあります
- ATEXIT
- NYAOS 終了時に実行すべきコマンドを設定できます。
- CWD
- 現在のカレントディレクトリを保持しています。
- NOTPATHCHAR
- 補完の際に、パス名に含めて欲しくない文字を定義できます。例えば、「let NOTPATHCHAR="+-;@"」としておけば、「netselect @~/hobb」と入力している時、「@」が邪魔で補完できないというのを回避できます。
通常、子プロセスは、親プロセスの環境(カレントディレクトリ・環境変数)を操作することはできませんが、NYAOS は外部に対して、名前付きパイプを公開しており、こちらにコマンドを書き込むことによって、子プロセスより環境を変更することができます。
使い方ですが、名前付きパイプのパイプ名は、環境変数 PIPE2NYAOS に格納されています。このパイプに普通コマンドラインに入力する文字列を書きこむだけで Ok です。
例1:NYAOS のカレントディレクトリの操作
[C:\usr\src\nyaos] echo %PIPE2NYAOS%
\PIPE\NYAOS.1574
[C:\usr\src\nyaos] copy con \PIPE\NYAOS.1574
cd ..
^Z
[C:\usr\src] _
例2:NYAOS の環境変数の操作
[C:\] echo %hogehoge%
[C:\] copy con %PIPE2NYAOS%
set hogehoge=uhauha
^Z
[C:\] echo %hogehoge%
uhauha
[C:\] _
例3:パッケージに同梱した writer.cc を参照ください。
パイプのバッファは 512 bytes しか確保していませんので、あまり大量に書き込むとデッドロックに陥ります。使用はほどほどにしてください。
このプログラムを開発するまで、自分はLEE Cjin Pheow氏作の「Yet Another OS/2 Shell」を使っていました。
それは生のCMD.EXEに比べると、非常に快適な環境だったのですが、次のような不満がありました。
- dir命令の起動が遅い。
- ファイル名補完時に開かれる窓の枠が日本語環境だと見事に化ける。
- 倍角文字の右側にカーソルが移動する。
そこで、自分で OS/2 のコマンドラインのシェルを作ろうと思い至ったわけです。
製作にあっては、以下のような目標を立てました。
- 入力関係は、ほか(例えばエディタ)でも簡単に転用できるような
C++クラスとする。
- DOS(VDM)でも使用できる。
- ファイル名補完は、できるだけ tcsh を目指す。
- 全機能(パイプやリダイレクト)を自分で作るのではなく、
CMD.EXE を system 関数で呼び出すだけのプログラムとする。
- 内蔵lsを用意する。
- 人に配るなら、エイリアスやヒストリーが必要。
1.0 の時点では、3.がまだまだでしたが、自分ではほぼ満足いくところまでできましたので、公開に踏みきりました。2. は当初DOS-Extender
RSX.EXE を使うことで実現できていたのですが、
- RSX.EXE 自身がコンベンショナルメモリをかなり消費するので、NYAOSの上
で大きなプログラムを起動できない。
- 環境によっては、実行もできないという報告がある。
- OS/2 の API 関数をあまり積極的に使えない。
などの理由で、現在は VDM のサポートをやめています。
名前については、YAOSの日本語対応パッチと勘違いされないか心配ですが、ゴロのよさから、YAOS に"N"を付けて NYAOS --- Nihongo Yet Another
Os/2 Shell としました。(でも、将来的には名前を変えるかも...)
これからの展望としては
- クラス設計の失敗から転用しずらくなったエディタ部の再構築
- CMD.EXE を利用しない、独立シェル化
- コマンド実行部とエディタ部をそれぞれ、汎用DLL化
などを考えています。ですが、これらは仲々難しく、
当分先のことになると思われます。
-
「option -vio」の時に、環境変数 Prompt/NyaosPrompt で $I,${...} を使うと、アトリビュートが初期化されてしまいます。プロンプトでエスケープシーケンスを使う場合、$I,${...} は先頭に置いてください。
-
普通に環境変数を操作するような、OS/2 のコマンドファイルを実行しても、親プロセスの NYAOSには反映されません(8.の名前付きパイプを使えば別ですが)。環境変数の設定は、「~/.nyaos」に定義するか、
source コマンドファイル名
で実行してください。
-
NYAOS は mode 命令を監視して、可能な限り、画面サイズを環境変数 COLUMNS やLINES に反映させますが、バッチファイル中の mode 命令にまでは目が届きません。
「~/.nyaos」やsourceで読み込むファイルは大丈夫です。
- CMD.EXE の for命令は「for %%i in (*.cc) do echo %%i」のように、
「%%」を「%」の代わりに使用してください。これは NYAOS の環境変数置換機能が「%%」を「%」へ変換してしまうからです。
- 「内蔵ls | more」が Ctrl-C で終了できません。
Ctrl-Break で代用してください。
ただし、普段 Ctrl-Break は NYAOS 自身を終了させますので、
注意してください。
当プログラムはフリーソフトウェアであり、使用は自由であり無料です。著作権は作者 : 葉山 薫 にあり、放棄はしておりません。配布・転載は歓迎ですが、当ドキュメントを必ず実行ファイルに添付してください。
ソースリストは別のパッケージ(tar+bzip2 によるアーカイブ)に含まれています。こちらは GNU General Public Licence に従って、改変・再配布できます。
当プログラムを使用してうえで生じたいかなる損害についても、作者は責任を負いませんが、バグリポートを送っていただければ、次のバージョンでは、できるだけバグを修正させていただきます。
NYAOS の最新版は
より入手可能です。バグ・提案などありましたら
までメイルください。
最後になりましたが、NYAOSの開発に際して協力いただきました、
金島 岳 さん、宇野 篤也さん、山田 秀雄さん、奥西 藤和さん、
吉田 孝一さん、松尾 浩 さん、我那覇 誠さん、赤木 有一さん、
近藤 弘康さん、羽生 匡之さん、清水 洋 さん、相澤 邦彦さん、
さとうひろもとさん、品野 竜太さん、大島 幸一さん、上野 博さん、
我澤 賢之さん、松村 興さん、山野@NELさん、大久保 均さん、
崎濱 たつひでさん、橋本 出さん、Altair☆さん、畠山 明さん、
Kai Eversさん、吉田かつひささん、織華さん、葛原 賢二さん、
今井 優さん、Chris Hellwigさん、小林 敬太郎さん、FRIES さん、
中山 靖さん、Jeff R. さん、中川 貴之さん、たが まさひろさん、
大黒 義裕さん、 そして Sukisuki-OS/2 Mailing List の皆様方
に、この場を借りてお礼申し上げます。ありがとうございました。
サ | サ --- はやまかおる(HAYAMA,Kaoru) -------
世 | 千 ♪ mailto:iyamatta.hayama@nifty.ne.jp
木 山 黒 ★ http://hp.vector.co.jp/authors/VA009797/