Document of the ┏┓┳┳ ┳┏━┓┏━┓┏━┓ ┃┃┃┗━┫┣━┫┃ ┃┗━┓ ┻┗┛┗━┛┻ ┻┗━┛┗━┛ Free Software - Nihongo Yet Another Os/2 Shell - 1996,97,98,99 (c) HAYAMA,Kaoru
主な特徴:
set CANNAHOST=<かんなホスト名>という行を加える
(*) ホームディレクトリ…環境変数 HOME の差すディレクトリ
なお、カスタマイズファイルが見付からないなどのエラーが生じる場合はnyaos.rc にset CANNYA=<かんなシステムのドライブ>[,<カスタマイズファイル名>]という定義を加えるなどしてください。 カスタマイズファイル名は省略できます。なお、NYAOS はカスタマイズファイルを
NYAOS {-オプション} [起動ディレクトリ] ↓
で起動します。起動オプションは次のようなものがあります。
カレントディレクトリの .nyaos → _nyaos → nyaos.rc → ホームディレクトリの .nyaos → _nyaos → nyaos.rcこれらは REXX でも記述できます(誰もやらんか(笑))
C-z (EOF) NYAOSを終了
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 続いて入力される制御文字をそのまま受け入れます
(^@ ^J除く)
F1 ファイル名をフルパスへ変換する
F2 ファイル名をURL形式("file://c|〜")へ変換する。
[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■ :
^Z (EOF) NYAOSを終了
^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 続いて入力される制御文字をそのまま受け入れます
(^J ^@除く)
F1 ファイル名をフルパスへ変換する
F2 ファイル名をURL形式("file://c|〜")へ変換する。
↓ C-t C-TAB TAB ALT-RETURN 次候補 ↑ ALT-BACKSPACE 前候補 ← C-g ESC キャンセル → C-m Enter 候補を確定する。 その他 候補を確定後、キーの機能を実行する。
[E:/] alias foo="echo ""ahaha""" [E:/] alias bar=echo ""ufufu"" [E:/] alias foo=echo "ahaha" bar=echo ""ufufu""
alias dir=dir %@ alias copy=copy %@ alias move=move %@と指定しておけばよいでしょう。
[E:] option -amp_start [E:] alias foo=echo ahaha & echo ufufu ufufu [E:] alias foo=echo ahaha & echo ufufu<置き換える構文>を引用符で囲むと、このバグは回避できます。
[E:] option -amp_start [E:] alias foo="echo ahaha & echo ufufu" & echo wahaha wahaha [E:] alias foo=echo ahaha & echo ufufu
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形式への変換 delete_char カ−ソル位置の文字を削除 delete_char_or_list 一字削除/補完リスト end_of_line 末尾へ移動 forward_char カ−ソルを右へ移動 forward_word 次の単語の先頭へ移動 kill_line カ−ソル以降の文字を削除 kill_top_of_line カーソル以前の文字を削除 kill_whole_line 入力文字全廃棄 next_history , down_history 最近の履歴参照 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 -t」は基本的に「cds」と同じですが、部分ディレクトリ名は、ディレクトリ名の先頭からしかマッチしません。 つまり、\os2\boot に対し、「cd -s 2 b」や「cds 2 b」では移動できますが、「cd -t 2 b」ではできません。
^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"と表示されます。(それにしても、例外が多いプログラムだなぁ...)
end > ファイル名 end | コマンド 引数 ...で終了してください。
の形式で一覧します。ウインドウ番号 : タイトル
-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での名前)を表示 -H , --inline-comment 一つ目のコメントをインラインで表示 --multi-comment 全コメントを表示 -E 「--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での名前の色指定ファイルは
<left code> <type code> <right code> filename <end code>と表示されます。
オプション: -p , -s : プロパティー(設定ノートブック)を開きます。 -i : アイコン表示で開きます(*)。 -t : ツリー表示で開きます(*)。 -d : 詳細表示で開きます(*)。 -o xxxx : xxxx で指定される形で開きます。 例えば「-i」は「-o ICON」と等価です。 -a : ウインドウをアクティブにします。(*) フォルダー/ディレクトリの場合のみです。
nyaos --option+ (有効化) nyaos --option- (無効化)のように変更させることもできます。
[C:\] set X=A;B;C [C:\] set X+=C [C:\] set X C;A;BPATHの設定などに便利なはずです。
alias ls=ls.exeと別名定義してください。ただし、ls に限って言えば、未サポートのオプションを見付けた場合、自動的に外部の ls.exe を呼び出すので、特にalias の必要はありません。
... → ..\.. .... → ..\..\.. ..... → ..\..\..\..option -dots でこの置換を抑制できます。
!! 一つ前の入力文字列へ !n 最初から n 番目に入力文字列へ !-n n 個前に入力した文字列へ !str str から始まる、最も最近の入力文字列へ !?str? str を含む、最も最近の入力文字列へ
:0 コマンド名を引用する。 :m m 番目の引数だけを引用する。 :m-n m 番目から n番目までの引数を引用する。 :-n コマンド名と n 番目までの引数を引用する。 ^ 最初の引数だけを抜き出す。 $ 最後の引数だけを抜き出す。 * 全ての引数を引用する。なお、以上の語尾を ! の直後につけると、直前の入力に対する操作となります。
「~/bar」→「x:\foo\bar」
「~bar」 →「x:\foo\..\bar」
$ZA ベル
$ZH $! ヒストリ番号
$ZV $@ カレントドライブのボリュームラベル
$ZP カレントディレクトリ(EAロングネームへの変換を行う)
$W カレントディレクトリ($HOME→「~」の変換を行う)
${..} 中括弧で囲まれた文字のドライブのカレントディレクトリを
画面最上行に表示する。例: ${cdef}
具体的には、例えば test.plというファイルが
#!/usr/local/bin/perlという行で始まっている場合、
test.pl param-1 param-2 ...という入力が
/usr/local/bin/perl test.pl param-1 param-2 ...と等価になります。これを NYAOS に取り入れてみました。 UNIXとの違いは次のような点があります。
2.は PATHを使うと、多くのディレクトリを検索しなければいけないので、ディスク アクセスの節約を考えた上の仕様です。
3.は、よく「#!/usr/local/bin/perl」と指定しているスクリプトに対する対応です。 UNIXのスクリプトをそのまま使えるようにしました。
環境変数の定義の例を次に示します。
set SCRIPTPATH=.;e:/usr/script;e:/usr/bin set SCRIPTDRIVE=e:以上の置換の対象は、入力した最初の単語だけではなく、「|」や「&」の直後にも 適用されるので、スクリプトのフィルタ的使用も可能です。
SOSによるスクリプトは、もちろん OS/2 上でも動くのですが、見かけ上、COMファイルなので、実行の度に PC-DOS窓が開いてしまい、あまり美しく動作できるとは言えません。
そこで、NYAOS は
基本動作は、「#!」形式のスクリプトと同じで、コマンドラインの置換で実現されています。この機能によって、DOS/OS/2共用のスクリプトを作ることができます。なお、拡張子「.com」の入力は省略できます。
名前については、YAOSの日本語対応パッチと勘違いされないか心配ですが、ゴロのよさから、YAOS に"N"を付けて NYAOS --- Nihongo Yet Another Os/2 Shell としました。(でも、将来的には名前を変えるかも...) これからの展望としては
source コマンドファイル名
で実行してください。
ソースリストは別のパッケージ(tar+bzip2 によるアーカイブ)に含まれています。 こちらは GNU General Public Licence に従って、改変・再配布できます。
当プログラムを使用してうえで生じたいかなる損害についても、作者は責任を負いませんが、バグリポートを送っていただければ、次のバージョンでは、できるだけバグを修正させていただきます。
NYAOS の最新版は
http://www.vector.co.jp/authors/VA009797/warp/nyaos.html
より入手可能です。バグ・提案などありましたら までメイルください。最後になりましたが、NYAOSの開発に際して協力いただきました、
金島 岳 さん、宇野 篤也さん、山田 秀雄さん、奥西 藤和さん、 吉田 孝一さん、松尾 浩 さん、我那覇 誠さん、赤木 有一さん、 近藤 弘康さん、羽生 匡之さん、清水 洋 さん、相澤 邦彦さん、 さとうひろもとさん、品野 竜太さん、大島 幸一さん、上野 博さん、 我澤 賢之さん、松村 興さん、山野@NELさん、大久保 均さん、 崎濱 たつひでさん、橋本 出さん、Altair☆さん、畠山@SRAさん、 そして Sukisuki-OS/2 Mailing List の皆様方にこの場を借りてお礼申し上げます。
サ | サ --- はやまかおる(HAYAMA,Kaoru) ------- 世 | 千 ♪ mailto:iya-hayamatta@ijk.com 木 山 黒 ★ http://hp.vector.co.jp/authors/VA009797/