library home hp.com home products and services support and drivers solutions
cd-rom home
End of Jump to page title
HP OpenVMS Systems
Documentation

Jump to content


日本語 HP OpenVMS

日本語 HP OpenVMS
DEC XTPU
リファレンス・マニュアル


前へ 次へ 目次 索引


注意

このパラメータの意味は,コード・フィールドに指定したアイテム・コードによって異なります。

XTPU$K_OPEN アイテム・コードを指定した場合には,data 引数は,オープン要求に関する情報を含むアイテム・リストのアドレスです。オープン要求に関する情報を指定する場合には,以下のDEC XTPU アイテム・コードを使用できます。


説明

省略時の状態では,XTPU$FILEIO はキャリッジ・リターン・レコード属性を持った可変長ファイルを作成します(fab$b_rtm=var, fab$b_rat=cr)。 XTPU$K_RECORD_ATTR アイテムまたは XTPU$K_RECORD_FORM アイテムを指定した場合には,それらのアイテムが使用されます。使用できるフォーマットと属性の組み合わせは以下のとおりです。

フォーマット 属性
STM, STMLF, STMCR O, BLK, CR, BLK+CR
VAR O, BLK, FTN, CR, BLK+FTN, BLK+CR

他の組み合わせはすべて,CR 属性を持った VAR フォーマットに変換されます。

このルーチンは常に,ストリーム・データ構造の最初のロングワードに511より大きな値をセットします。ユーザ作成ファイル入出力ルーチンは0−511の値に制限されているため,このルーチンがセットするファイル制御ブロック(FCB)とユーザが作成したブロックは簡単に区別することができます。

注意

単純な呼び出し可能インタフェースを利用する場合,省略時の設定により, XTPU$FILEIO が使用されます。完全な呼び出し可能インタフェースを利用する場合は,明示的に XTPU$FILEIO を呼び出すか,またはユーザが独自に入出力ルーチンを用意しなければなりません。


戻される条件値

ファイル入出力ルーチンは,RMSステータス・コードを DEC XTPU に戻します。エラー・メッセージが必要な場合には,ファイル入出力ルーチンがすべてのエラーを通知しなければなりません。

XTPU$HANDLER

このルーチンはDEC XTPU の条件ハンドラです。DEC XTPU 条件ハンドラは, Put Message($PUTMSG) システム・サービスを呼び出し, XTPU$MESSAGE のアドレスを渡します。

形式

XTPU$HANDLER signal_vector, mechanism_vector


戻り値

OpenVMS 用法 条件値
データ型 符号なしロングワード
アクセス 書き込みのみ
受け渡し方 値による


ロングワードの条件値です。


引数

signal_vector

OpenVMS 用法 引数リスト
データ型 符号なしロングワード
アクセス 変更
受け渡し方 参照による


シグナル・ベクタです。条件ハンドラに渡されるシグナル・ベクタについての説明は,『OpenVMS System Services Reference Manual』を参照してください。

mechanism_vector

OpenVMS 用法 引数リスト
データ型 符号なしロングワード
アクセス 読み取りのみ
受け渡し方 参照による


条件ハンドラに渡されるメカニズム・ベクタについての説明は,『OpenVMS System Services Reference Manual』を参照してください。


説明

XTPU$MESSAGE ルーチンは実際のメッセージ出力を実行します。 Put Message ($PUTMSG) システム・サービスはメッセージを書式整形するだけです。このルーチンは, 第 6.1.2 項 で説明した変数からメッセージ・フラグの設定と機能名を入手します。これらの値を変更できるのは,DEC XTPU の SET 組込みプロシージャだけです。

ハンドラが受け取った条件値に FATAL ステータスが含まれている場合や, DEC XTPU のファシリティ・コードが含まれていない場合には,条件が再通知されます。

条件が XTPU$_QUITTING,XTPU$_EXITING,またはXTPU$_RECOVERFAIL の場合には,条件ハンドラを設定したルーチンに対して,UNWIND 要求が与えられます。

メッセージを処理したあと,条件ハンドラは継続ステータスを戻します。 DEC XTPU エラー・メッセージ要求は,どのメッセージを出力しなければならないかを示す条件を通知することによって実行されます。シグナル・アレイに含まれる引数は,正しく書式整形されたメッセージ引数ベクタです。このベクタには,関連するメッセージに対する複数の条件と書式整形された ASCII 出力(FAO) 引数が含まれていることがあります。たとえば,存在しないファイルをエデイタがオープンしようとした場合には,DEC XTPU のメッセージとして XTPU$_NOFILEACCESS が通知されます。このメッセージに対する FAO 引数は,ファイルの名前を示す文字列です。この条件にはエラー・ステータスが含まれており,そのあとに RMS のステータス・フィールド(STS)とステータス値フィールド (STV)が続きます。この条件には回復不可能な重大なエラーは含まれていないので,エラーを処理したあと,エディタは処理を継続できます。

エディタは XTPU$CONTROL から自動的に戻るわけではありません。したがって,XTPU$CONTROL ルーチンを呼び出す場合には,制御をエディタに戻すための方法を設定しておかなければなりません(たとえば,CALL_USER 組込みプロシージャを使用します)。また,ユーザ作成条件ハンドラを設定したものの,特定の条件に対してはDEC XTPU ハンドラを呼び出す場合には,プログラムの中で制御を戻したい場所に,省略時の条件ハンドラを設定しておかなければなりません。また,XTPU$SPECIFY_ASYN_ACTION および XTPU$TRIGGER_ASYNC_ACTION の非同期ルーチンを使って,XTPU$CONTROL を中断することもできます。

『OpenVMS Calling Standard』を参照してください。


XTPU$INITIALIZE

このルーチンはテキスト処理のために DEC XTPU を初期化します。このルーチンはグローバル・データ構造を割り当て,グローバル変数を初期化し,仮想ファイル・マネージャやスクリーン・マネージャ,入出力サブシステムも含めて,エディタの主要コンポーネントのそれぞれに対して,適切なセットアップ・ルーチンを呼び出します。

形式

XTPU$INITIALIZE callback [,user_arg]


戻り値

OpenVMS 用法 条件値
データ型 符号なしロングワード
アクセス 書き込みのみ
受け渡し方 値による


ロングワードの条件値です。ユーティリティ・ルーチンはほとんど,条件値を R0 に戻します。このルーチンから戻される可能性のある条件値は,"戻される条件値" にまとめられています。


引数

callback

OpenVMS 用法 符号なしロングワード・ベクタ
データ型 バウンド・プロシージャ値
アクセス 読み取りのみ
受け渡し方 ディスクリプタによる


コールバック・ルーチンです。引数 callback は,初期化パラメータを含むアイテム・リストのアドレスを返すユーザ作成ルーチンか,またはファイル入出力操作を処理するルーチンのアドレスです。このコールバック・ルーチンは,コマンド・ライン解析ルーチン (XTPU$CLIPARSE か,またはユーザ作成の解析ルーチンのいずれか) を呼び出さなければなりません。

呼び出し可能なDEC XTPU は,初期化パラメータを指定するために使用できるアイテム・コードを定義しています。これらのコードを使用するときには,以下の基準に従ってください。

図 6-3 は,アイテムディスクリプタの一般的な形式を示しています。アイテム・リストの作成方法についての詳しい説明は,使用する各言語のプログラマ・マニュアルを参照してください。

図 6-3 アイテムディスクリプタのフォーマット


アイテムディスクリプタのリターン・アドレスは,通常0です。

使用できるアイテム・コードは 表 6-2 に示すとおりです。

表 6-2 使用できるアイテム・コード
アイテム・コード 説明
XTPU$_OPTIONS コマンド修飾子を使用可能にします。バッファ・アドレス・フィールドの14ビットは,いろいろな DEC XTPU コマンド修飾子に対応しています。バッファ・アドレス・フィールドの残りの18ビットは使用されません。
XTPU$_JOURNALFILE /JOURNAL 修飾子に指定されている文字列を渡します。バッファ長フィールドは文字列の長さであり,バッファ・アドレス・フィールドは文字列のアドレスです。これは,GET_INFO (COMMAND_LINE,"JOURNAL_FILE") で使用できる文字列です。この文字列はヌル文字列でもかまいません。
XTPU$_SECTIONFILE マッピングされるバイナリ初期化ファイル(セクション・ファイル)の名前を示す文字列を渡します。バッファ長フィールドは文字列の長さであり,バッファ・アドレス・フィールドは文字列のアドレスです。DEC XTPU の CLD ファイルには,この文字列の省略時の値が含まれています。 XTPU$V_SECTION ビットがセットされている場合には,このアイテム・コードを指定しなければなりません。
XTPU$_OUTPUTFILE /OUTPUT 修飾子に指定されている文字列を渡します。バッファ長フィールドは文字列の長さであり,バッファ・アドレス・フィールドは文字列のアドレスを指定します。これは,GET_INFO (COMMAND_LINE,"OUTPUT_FILE") 組込みプロシージャから戻される文字列です。文字列はヌル文字列でもかまいません。
XTPU$_DISPLAYFILE /DISPLAY 修飾子に指定されている文字列を渡します。バッファ長フィールドは文字列の長さであり,バッファ・アドレス・フィールドは文字列のアドレスを指定します。
XTPU$_COMMANDFILE /COMMAND 修飾子に指定されている文字列を渡します。バッファ長フィールドは文字列の長さであり,バッファ・アドレス・フィールドは文字列のアドレスです。この文字列は,GET_INFO (COMMAND_LINE,"COMMAND_FILE") 組込みプロシージャから戻される文字列です。文字列はヌル文字列でもかまいません。
XTPU$_FILENAME コマンド・ラインに指定されている入力ファイルの名前を示す文字列を渡します。バッファ長フィールドはこの文字列の長さを指定し,バッファ・アドレス・フィールドはアドレスを指定します。これは, GET_INFO (COMMAND_LINE,"FILE_NAME") 組込みプロシージャから戻される文字列です。このファイル名はヌル文字列でもかまいません。
XTPU$_OTHER_FILENAMES コマンド・ラインに指定されている入力ファイルのうち一番目を除くものの名前を示す文字列を渡します。バッファ長フィールドはこの文字列の長さを指定し,バッファ・アドレス・フィールドはアドレスを指定します。 2番目以降の入力ファイルはそれぞれ XTPU$_OTHER_FILENAMES のエントリが必要です。これは,GET_INFO (COMMAND_LINE,"NEXT_FILE_NAME") 組込みプロシージャから戻される文字列です。
XTPU$_FILEIO ファイル操作を処理するために使用されるルーチンのバウンド・プロシージャ値を渡します。自分で作成したファイル入出力ルーチンを使用することもファイル操作を処理するためにDEC XTPU が提供するユーティリティ・ルーチンである XTPU$FILEIO を呼び出すこともできます。ファイル入出力ルーチンのアドレスは,バッファ・アドレス・フィールドに指定します。
XTPU$_CALLUSER CALL_USER 組込みプロシージャが呼び出すユーザ作成ルーチンのバウンド・プロシージャ値を渡します。このルーチンのアドレスはバッファ・アドレス・フィールドに指定します。
XTPU$_INIT_FILE /INITIALIZATION 修飾子に指定されている文字列を渡します。バッファ長フィールドは文字列の長さであり,バッファ・アドレス・フィールドは文字列のアドレスです。この文字列は,GET_INFO (COMMAND_LINE, "INIT_FILE") 組込みプロシージャから戻される文字列です。
XTPU$_KANJI_DICFILE /KANJI_DICTIONARY 修飾子に指定されている文字列を渡します。バッファ長フィールドはこの文字列の長さを指定し,バッファ・アドレス・フィールドはアドレスを指定します。これは,GET_INFO (COMMAND_LINE, "KANJI_DICTIONARY_FILE") 組込みプロシージャから戻される文字列です。
XTPU$_START_LINE その編集セッションの開始行番号を渡します。バッファ・アドレス・フィールドは /START_POSITION 修飾子で指定した2つの整数値の最初の値です。この値は GET_INFO (COMMAND_LINE,"LINE") 組込みプロシージャから戻される値です。通常,初期化プロシージャがこの情報を用いて,編集するバッファの先頭位置を設定します。バッファの先頭行は line 1 です。
XTPU$_START_CHAR その編集セッションの開始カラム位置を渡します。バッファ・アドレス・フィールドは /START_POSITION 修飾子で指定した2つの整数値の2番目の値です。この値は GET_INFO (COMMAND_LINE,"CHARACTER") 組込みプロシージャから戻される値です。通常,初期化プロシージャがこの情報を用いて,編集するバッファの先頭位置をを設定します。バッファの先頭カラムは character 1 です。
XTPU$_WORKFILE /WORK 修飾子で指定される文字列を渡します。バッファ長フィールドはこの文字列の長さを指定し,バッファ・アドレス・フィールドはアドレスを指定します。これは,GET_INFO (COMMAND_LINE, "WORK_FILE") 組込みプロシージャから戻される文字列です。
XTPU$_CHAIN バッファ・アドレス・フィールドに次のアイテム・リストのアドレスを指定します。
XTPU$_ENDLIST アイテム・リストの最後を示します。
XTPU$_CTRL_C_ROUTINE Ctrl/C ASTを処理するためのルーチンのバウンド・プロシージャ値を渡します。DEC XTPU は Ctrl/C AST が発生すると,そのルーチンを呼び出します。そのルーチンが FALSE 値を返すと,DEC XTPU は Ctrl/C が処理されたものと仮定します。TRUE 値が返されると, DEC XTPU は現在実行しているDEC XTPU プロシージャの実行を強制終了させます。バッファ・アドレス・フィールドは,2つのロングワード・ベクタのアドレスを指定しています。最初のロングワードはルーチンのアドレスであり,2番目のロングワードはそのルーチンを呼ぶ前に R1 にDEC XTPU がロードする環境値です。
XTPU$_DEBUGFILE /DEBUG 修飾子で指定された文字列を渡します。バッファ長フィールドは文字列の長さであり,バッファ・アドレス・フィールドは文字列のアドレスです。

表 6-3 は,XTPU$K_OPTIONS アイテム・コードによって与えられるビットと対応するマスクをまとめたものです。

表 6-3 XTPU$OPTIONS アイテム・コードによって与えられるビットと対応するマスク
マスク フラグ 機能
XTPU$M_RECOVER 1 XTPU$V_RECOVER 2 回復操作を実行します。
XTPU$M_JOURNAL XTPU$V_JOURNAL 編集セッションをジャーナルします。
XTPU$M_READ XTPU$V_READ メイン・バッファに対しては READ_ONLY 編集セッションとします。
XTPU$M_SECTION XTPU$V_SECTION 起動時にバイナリ初期化ファイル( DEC XTPU セクション・ファイル)にマッピングします。
XTPU$M_CREATE XTPU$V_CREATE 指定した入力ファイルが存在しない場合,入力ファイルを作成します。
XTPU$M_OUTPUT XTPU$V_OUTPUT セッションを終了するときに,変更された入力ファイルを書き出します。
XTPU$M_COMMAND XTPU$V_COMMAND 起動時にコマンド・ファイルを実行します。
XTPU$M_DISPLAY XTPU$V_DISPLAY スクリーンを使用する編集と表示のために,ターミナルを使用します。
XTPU$M_INIT XTPU$V_INIT イニシャライゼーション・ファイルがあります。
XTPU$M_COMMAND
_DFLTED
XTPU$V_COMMAND
_DFLTED
コマンド・ラインのユーザが指定した省略値の名前があるかどうかを指示します。これが TRUE である場合には,ユーザがコマンド・ファイルを指定しなかったことを意味します。このビットが FALSE にセットされていて,かつファイルが指定されていなかったら,XTPU$INITIALIZE は失敗します。
XTPU$M_WRITE XTPU$V_WRITE /WRITE がコマンド・ラインで指定されたかどうかを示します。
XTPU$M_MODIFY XTPU$V_MODIFY /MODIFY がコマンド・ラインで指定されたかどうかを示します。
XTPU$M_NOMODIFY XTPU$V_NOMODIFY /NOMODIFY がコマンド・ラインで指定されたかどうかを示します。
XTPU$M_NOKANJI_DIC XTPU$V_NOKANJI_DIC /NOKANJI_DICTIONARY がコマンド・ラインで指定されたかどうかを示します。
XTPU$M_SEC_LNM_MODE XTPU$V_SEC_LNM_MODE イメージが特権付きでインストールされ,このビットがセットされていると,セクション・ファイルを開けるときに信用のある論理名のみが使用されます。


1XTPU$M...マスクを示します。
2XTPU$V...ビット・アイテムを示します。


前へ 次へ 目次 索引