[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]
Digital SNA Remote Job Entry for OpenVMSと組み合わせて使用することにより, DECnet SNA Gateway-ST, DECnet SNA Gateway-CTを通して,ハイレベルな伝送制御方式で接続された IBM システムと OpenVMS システムとの間で, 漢字コードを含むファイルの送受信を行うことができます。
JSNACODE ユーティリティを使用し,IBM-DEC のファイル単位でのコード変換を行うことができます。 JSNAKNJDEF ユーティリティを使用して,外字の登録を行うことができます。
図 8-1が示すように,IBM漢字空間のJIS漢字コードについてはDEC 漢字セットの対応する各文字に対応付けられ,IBM付加文字(338 文字)およびIBMユーザ定義文字(4,370文字)については,日本語RJE利用者の選択によりDEC 拡張漢字セットのユーザ定義領域に対応付けます。その際,次のような対応規則を設定します。
IBM漢字セット | 対応規則 |
---|---|
JIS制定文字 | DEC漢字セットと一対一対応 |
IBM付加文字 | DEC拡張漢字セットの連続6 区間と対応 |
IBMユーザ定義文 | DEC拡張漢字セットの連続2区間 |
字の1区間 |
$ JSNACODE :== $JSNACODE
$ JSNACODE/IPC=DEC/OPC=IBM 入力ファイル名 出力ファイル名または
$ JSNACODE/IPC=IBM/OPC=DEC 入力ファイル名 出力ファイル名
JSNACODE 入力ファイル指定 [ 出力ファイル指定 ]
コマンド修飾子 | 省略時の値 |
---|---|
/IPC=keyword | /IPC = DEC |
/OPC=keyword | /OPC = DEC |
/CHARACTERSET=ファイル名 | /CHARACTERSET=JSNARJEDEF |
/[NO]ESCAPE[=SS|LS] | /ESCAPE=SS(/KMAPを指定した場合は/NOESCAPE ) |
/[NO]EXTERNAL=外字管理ファイル名 | /NOEXTERNAL |
/FIELD=(START:n,END:n,LENGTH:n,KANJI|KATAKANA) | なし |
/[NO]KMAP=KMAPレコード数 | /NOKMAP(レコード数の省略値は1) |
/[NO]TAB | /NOTAB |
入力ファイルのデータ中にSS2(X'8E')が現われた場合,次の1バイトをJIS カタカナ・コードセットと解釈します。SS2が付加されずにX'A1'以上X'FE' 以下のコードが現れた場合は,全角コードの上位バイトと解釈します。/ESCAPE と/KMAPは同時には指定できません。この指定がない場合は,/KMAP の指定に従います。変換したIBMコードの全角文字列の前後にはシフトコード(X'0E',X'0F') が挿入されます。
JIS カタカナ・コードセットに変換された場合は,前に SS2 を付加してからファイルに出力します。 この出力ファイルは, 端末またはプリンタに直接出力する最終形式のファイルを想定しています。 /ESCAPE と /KMAP は同時には指定できません。指定がない場合は, /KMAP の指定に従います。
/ESCAPE
の指定がある場合,入力ファイルのデータ中にLS3R(ESC|)が現われたとき以後,X'A1'
以上X'FE'以下のコードを全角コードの上位バイトと解釈します。LS2R(ESC})
が現われたとき以後のコードを,すべて1
バイト・コードと解釈します。
/ESCAPE と /KMAP は同時には指定できません。
この指定がない場合は,/KMAPの指定に従います。変換したIBM
コードの全角文字列の前後にはシフトコード(X'0E',X'0F')が挿入されます。
/ESCAPE
の指定がある場合,出力ファイル中にDEC漢字コードのエスケープ・
シーケンスを挿入します。この出力ファイルは,
端末またはプリンタに直接出力する最終形式のファイルを想定しています。
/ESCAPE と /KMAP は同時には指定できません。指定がない場合は,/KMAP
の指定に従います。
/ESCAPE 修飾子を指定せずに,グローバル・シンボルJSNARJE$ESCAPE=="SS|LS" を定義することにより,/ESCAPE=SSまたは/ESCAPE=LS と指定した場合と同じ結果が得られます。ただし,明示的に/ESCAPE=SS|LS を指定した場合は,グローバル・シンボルより優先されます。
/EXTERNALの指定がない場合,IBMからDECへの変換の場合はIBM付加文字やIBM ユーザ定義文字はすべて"□" (X'A2A2')に,DECからIBMへの変換の場合も,DEC 拡張漢字セットの文字はすべて"□"(X'A2A2')に変換します。
/FIELD修飾子の指定がない時は,1レコード全体が変換の対象になります。
STARTの省略値はレコードの先頭で,END,LENGTHの省略値はレコードの最後の位置を示す値です。END
とLENGTHは同時には指定できません。/FIELD修飾子を33
個以上指定しても,33個目からの修飾子は無視されます。/FIELD修飾子は/ESCAPE
とは同時に指定できません。
モード指定のKATAKANAとKANJIは,同時に指定することはできません。
モード指定の keywordは,出力ファイルの開始/終了モードを指定します。 DEC 側の開始モードは,KMAP ファイルの指定に依存します。
モード指定の keywordは,入力ファイルの開始/終了モードを指定します。 /FIELD 修飾子を指定しない場合は,先頭レコードが 2バイト・コード開始のシフト・コード(X'0E')で始まらない限り, 英数字モードから始まるものとみなします。
/KMAPを指定した時,入力ファイルと同じファイル名で, ファイル・タイプが "KMAP" であるファイルが, 入力ファイルの全角・半角コード混在情報を示す KMAP ファイルであるとみなされます。ただし,論理名 JSNA$KMAPFILE が定義されている場合には,この論理名に割り当てられているファイルが優先的に使用されます。 そして,その情報にしたがってコード変換を行います。
KMAPレコード数の指定がある場合,KMAPファイルの先頭レコードから指定されたレコード数を変換する際に使用します。KMAP ファイル内の全KMAPレコード数が指定された値より小さい場合は, 全KMAPレコード数が指定されているものとして処理されます。/KMAP と/ESCAPEは同時には指定できません。
この指定がない場合は,/ESCAPEの指定に従います。
またKMAPコードが"Xk"で対応する入力コードが漢字コードだった場合は, KMAPコードは"XX"であるとみなします。
/KMAP の指定がある場合,コマンド・パラメータで指定した出力ファイル中にDEC 漢字コードのエスケープ・シーケンスを挿入せず, 出力ファイルと同じファイル名でファイル・タイプが "KMAP" のファイルを作成し, 全角・半角コードの混在情報を出力します。または,論理名 JSNA$KMAPFILE が割り当てられているファイル名が優先的に使用されます。KMAPレコード数の指定がある場合,KMAP ファイルに出力されるのは出力ファイルの先頭レコードから数えてKMAP レコード数分のレコードに対する全角・半角コードの混在情報です。
/KMAP と /ESCAPE は同時には指定できません。この指定がない場合は/ESCAPE の指定に従います。
/TABの指定がある場合は,タブをそれ自体有効なコードと解釈し,タブ・ コードを空白文字列へ変換することを行いません。
/NOTABの指定がある場合は,タブ・コードを次の文字位置が8の倍数となるようにタブ文字を空白文字に変換します。
空白文字列の変換は,DECコードからIBMコードへの変換の前に行われます。 したがって全角コードの前後に挿入されるシフトコード文字(X'0E',X'0F') はタブ位置の計算には含まれません。
$ jsnaknjdef :== $jsnaknjdef
$ jsnaknjdef
jsnaknjdef>
jsnaknjdef
コマンド | 機能 |
---|---|
use | 指定されたファイルに,外字管理情報を出力する |
list | 指定された外字管理ファイルの内容を指定したファイルに出力する |
define | 指定された外字管理ファイルに対応情報を書き込む |
undefine | 指定された外字管理ファイルに対応情報をクリアする |
help | JSNAKNJDEFユーティリティの情報を得る |
exit | JSNAKNJDEFユーティリティを終了する |
quit | JSNAKNJDEFユーティリティを終了する |
この節では,これらのコマンドについて説明します。
<形式>
<形式>
このオプションが省略された場合は標準出力に出力します。
jsnaknjdef> use extern.tbl jsnaknjdef> list List of the DEC-IBM extended Kanji File: extern.tbl DEC Extended Kanji IBM Kanji DEC Extended Kanji IBM Kanji 1 External 17 User 6D 2 External 18 User 6D 3 External 19 User 6E 4 External 20 User 6E 5 External 21 User 6F 6 External 22 User 6F 7 User 69 23 User 70 8 User 69 24 User 70 9 Undefined 25 User 71 10 Undefined 26 User 71 11 User 6A 27 User 72 12 User 6A 28 User 72 13 User 6B 29 Undefined 14 User 6B 30 Undefined 15 User 6C 31 Undefined 16 User 6C (END of list) Note : DEC Ku No. is decimal. IBM Ku No. is Hexa-decimal.表中の"External"はIBM付加文字を表し,"User xx"はIBMユーザ定義文字領域の第xx 区を表しています。
<形式>
external
to
1〜26までの区番号を10進数で指定します。指定された区番号から連続6区間に,IBM 付加文字が対応付けられます。例えばto 21を指定すると,DEC 漢字セットの21〜26区にIBM付加文字が対応付けられます。
1〜29までの区番号を10進数で指定します。指定された区番号から連続2区間に, 指定されたIBMユーザ定義文字領域の文字が対応付けられます。例えばuser 69 to 1 を指定すると,IBM漢字セットの69区がDEC拡張漢字セットの1 ,2区に対応付けられます。
# jsnaknjdef jsnaknjdef> use mytbl.tbl jsnaknjdef> define external to 21 jsnaknjdef> define user 69 to 1 jsnaknjdef> define user 6A to 3 jsnaknjdef> define user 6B to 5 jsnaknjdef> define user 6C to 7 jsnaknjdef> exit
上記のコマンドにより新規に作成されたmytbl.tblの中には,次のような指定がされることになります。
IBM漢字 | DEC漢字 |
---|---|
IBM付加文字 | DEC拡張漢字セットの第21区〜第26 区 |
IBMユーザ定義文字の第69区 | DEC拡張漢字セットの第1区〜第2区 |
IBM ユーザ定義文字の第6A区 | DEC拡張漢字セットの第3 区〜第4区 |
IBMユーザ定義文字の第6B区 | DEC拡張漢字セットの第5区〜第6区 |
IBMユーザ定義文字の第6C区 | DEC拡張漢字セットの第7 区〜第8区 |
# jsnaknjdef jsnaknjdef> use mytbl.tbl jsnaknjdef> define use 69 to 9 jsnaknjdef> exit
上記のコマンドにより既存のmytbl.tblは,次のように更新されることになります。
IBM漢字 | DEC漢字 |
---|---|
IBM付加文字 | DEC拡張漢字セットの第21区〜第26 区 |
IBMユーザ定義文字の第69区 | DEC拡張漢字セットの第9区〜第10区 |
IBM ユーザ定義文字の第6A区 | DEC拡張漢字セットの第3 区〜第4区 |
IBMユーザ定義文字の第6B区 | DEC拡張漢字セットの第5区〜第6区 |
IBMユーザ定義文字の第6C区 | DEC拡張漢字セットの第7 区〜第8区 |
<形式>
group と char を同時には指定できません。
group DEC拡張漢字セット区番号
<形式>
<形式>
<形式>
/KMAP=KMAPレコード数で指定したKMAPファイルには,変換対象ファイルの先頭レコードから指定されたレコード数分の情報が含まれます。
$ JSNACODE/FIELD=(START:1,LENGTH:30)/FIELD=(START:41,LENGTH:20) - _$/IPC=IBM/OPC=DEC/KMAP 入力ファイル名 出力ファイル名上記のような1レコード内のある部分のみを変換対象とした場合,作成されるKMAP レコードは次のような図のものとなり,変換対象となっていない部分については空白文字(X'20') が埋め込まれます。
facility-l-ident, text上記の各単語の意味は次のとおりです。
facility | メッセージを出力したプログラムまたはファシリティ名 |
l | 重大度レベル |
ident | メッセージID |
text | テキスト |
レベル | 重大度 | 説明 |
---|---|---|
S | 成功 | 利用者のコマンドは正常に実行された |
I | 情報 | ソフトウェアでとられた処置に関する報告 |
W | 警告 | 修正処置を取る必要がないエラー状態 |
E | エラー | 致命的ではないが,処理または修正の必要がある状態 |
F | 重大なエラー | 致命的であり,処理または修正の必要がある状態 |
ABNIN Abnormal input file read
ABNOUT Abnormal output file write
ABNKMAP Abnormal KMAP file read or write
ABNGAI Abnormal GAIJI control file read
FLDMIS FIELD parameter mismatch
INSMEM Insufficient dynamic memory
INVPARAM Invalid parameter value specified
NFDIN Input file not found
NFDKMAP KMAP file not found
NFGAI GAIJI control file not found
NORECIN No record in input file
NORECKMAP No record in KMAP file
TRALOAERR Translation table load error
この節では,コマンドの正常終了を受け入れられない可能性のある条件を示すメッセージをまとめます。
DECの区番号は1〜31の10進数で指定してください。IBMの区番号は?で指定してください
説明: : 入力されたコードが10進数でないか,入力されたコードが規定された範囲を越えています。
ユーザの対応: : 入力コードを確認してください。
USEコマンドでファイルを指定してください
説明: : 外字管理ファイル名が指定されていません。
ユーザの対応: : USEコマンドを使用して,外字管理ファイルを指定してください。