日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第 1 章:DEC XTPU の概要
第 2 章:DEC XTPU のデータ・タイプ
第 3 章:DEC XTPU 言語のレキシカル要素
第 4 章:DEC XTPU 組込みプロシージャ
第 5 章:DEC XTPU の起動
第 6 章:呼び出し可能なDEC XTPU
付録 A :DEC XTPUにおける端末装置のサポートと制限事項
付録 B :DEC XTPU メッセージ
索引
PDF
OpenVMS ホーム
日本語 HP OpenVMS

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


目次 索引




ユーザ作成ルーチン USER を使用することによって,ユーザ・プログラムは DEC XTPU の編集セッション中に制御を取ることができます (たとえば,一時的にエディタを離れ,計算を実行するなど)。

形式

USER integer, stringin, stringout


戻り値



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


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


引数



integer

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


CALL_USER 組込みプロシージャに対する最初のパラメータです。これは入力専用パラメータであり,変更してはなりません。

stringin

OpenVMS 用法 文字列
データ型 文字列
アクセス 読み取りのみ
受け渡し方 ディスクリプタによる


CALL_USER 組込みプロシージャに対する2番目のパラメータです。これは入力専用パラメータであり,変更してはなりません。

stringout

OpenVMS 用法 文字列
データ型 文字列
アクセス 読み取りのみ
受け渡し方 ディスクリプタによる


CALL_USER 組込みプロシージャへ返される文字列です。ユーザ・プログラムは,ランタイム・ライブラリが提供する文字列ルーチン (LIB$SGET1_DD など) によって割り当てられた動的文字列をこのディスクリプタに格納しなければなりません。DEC XTPU エディタは必要に応じてこの文字列を解放します。


説明

ユーザ作成ルーチン USER は,DEC XTPU の CALL_USER 組込みプロシージャによって呼び出されます。CALL_USER 組込みプロシージャはこのルーチンに 3 つのパラメータを渡します。このうち 2 つのパラメータは,ユーザ・アプリケーションがその目的に沿って用途を決めます (たとえば,FORTRAN プログラムで計算のオペランドとして使用することができます)。アプリケーションは,ランタイム・ライブラリが提供する文字列ルーチンを使い,USER ルーチンの stringout パラメータに値を格納することによって,その値を CALL_USER 組込みプロシージャに返します。

『DEC Text Processing Utility Reference Manual』には,BASIC による USER ルーチンのプログラム例が示されています。同マニュアルの CALL_USER 組込みプロシージャの説明を参照してください。


INTEGER FUNCTION XTPU$CALLUSER  (x,y,z) 
    IMPLICIT NONE 
    INTEGER X 
    CHARACTER*(*) Y 
    STRUCTURE /dynamic/ Z 
              INTEGER*2 length 
              BYTE    dtype 
              BYTE    class 
              INTEGER ptr 
    END STRUCTURE 
    RECORD /dynamic/ Z 
    CHARACTER*80 local_copy 
    INTEGER rs,lclen 
    INTEGER STR$COPY_DX 
    local_copy = '<' // y // '>' 
    lclen = LEN (Y) + 2 
 
    RS = STR$COPY_DX(Z,local_copy(1:lclen)) 
    XTPU$CALLUSER = RS 
    END 

この FORTRAN プログラムを呼び出す XTPU プロシージャの例を次に示します。

               PROCEDURE MY_CALL 
                    local status; 
                    status := CALL_USER (0,'ABCD'); 
                    MESSAGE('"' + status + '"'); 
               ENDPROCEDURE 




XTPU$CLEANUP ルーチンは,内部データ構造の後片付けをし,メモリを解放し,ターミナルを初期状態に戻します。これは DEC XTPU とのやりとりの最後に呼び出すルーチンです。

形式

XTPU$CLEANUP flags


戻り値



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


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


引数



flags

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


クリーンアップ・オプションを定義するフラグ(あるいはマスク)です。 flags 引数は,クリーンアップ・オプションを定義するロングワード・ビット・マスクのアドレス,または32ビット・マスクのアドレスです。このマスクは,セットしたいフラグ・ビットの論理和(OR)です。XTPU$V... はビット・アイテムを示し, XTPU$M... はマスクを示します。クリーンアップ・オプションは 表 6-1 に示されているとおりです。

表 6-1 クリーンアップ・オプション
シンボル1 機能
XTPU$M_CLOSE_KANJI_DIC かな漢字変換辞書をオープンしていた場合,かな漢字変換辞書をクローズします。
XTPU$M_CLOSE_KANJI_DIC かな漢字変換辞書をオープンしていた場合,かな漢字変換辞書をクローズします。
XTPU$M_CLOSE_SECTION 2 セクション・ファイルをクローズし,関連するメモリを解放します。バッファ,ウィンドウ,およびプロセスがすべて削除されます。キャッシュは整理され,初期化ファイルと初期化プロシージャの再実行のためのフラグがセットされます。セクションがクローズされ,かつオプション・ビットが /SECTION 修飾子の存在を示している場合,次に XTPU$INITIALIZE を呼び出すと,新しいセクション・ファイルが読み込まれます。
XTPU$M_DELETE_BUFFERS すべてのテキスト・バッファを削除します。この後もDEC XTPU を呼び出す場合には,これらのデータ構造を参照する変数はすべて,DELETE 組込みプロシージャの場合と同様にリセットされます。バッファが削除される場合には,そのバッファに含まれるレンジとマーカ,およびそのバッファを使用するサブプロセスもすべて削除されます。
XTPU$M_DELETE_CACHE 仮想ファイル・マネージャのデータ構造とキャッシュを削除します。この削除が要求された場合,バッファもすべて削除されます。キャッシュが削除されると,初期化ルーチンは次に呼び出されたときに仮想ファイル・マネージャを初期化し直さなければならなくなります。
XTPU$M_DELETE_CONTEXT DEC XTPU のコンテキスト全体を削除します。このオプションが指定されている場合には,初期化ファイルと初期化プロシージャの実行のためのオプションを除き,他のオプションもすべて指定されているものと解釈されます。
XTPU$M_DELETE_EXITH DEC XTPU の終了ハンドラを削除します。
XTPU$M_DELETE_JOURNAL ジャーナル・ファイルがオープンされている場合には,そのファイルをクローズし,削除します。
XTPU$M_DELETE_OTHERS 前もって割り当てられている種々のデータ構造を削除します。これらのデータ構造のために使用されていたメモリは,次に XTPU$INITIALIZE が呼び出されたときに再割り当てされます。
XTPU$M_DELETE_WINDOWS すべてのウィンドウを削除します。その後も DEC XTPU を呼び出す場合には,これらのデータ構造を参照する変数はすべて, DELETE 組込みプロシージャの場合と同様にリセットされます。
XTPU$M_EXECUTE_FILE 次に XTPU$EXECUTE_INIFILE が呼び出されたときに,コマンド・ファイルを再び実行します。異なるコマンド・ファイルを指定するつもりならば,このビットをセットしなければなりません。このオプションは, /COMMAND 修飾子の存在を示すのに XTPU$INITIALIZE に渡されるオプション・ビットと併用します。
XTPU$M_EXECUTE_PROC 次に
XTPU$EXECUTE_INIFILE が呼び出されたときに,XTPU$INIT_PROCEDURE を検索し,それを実行します。
XTPU$M_KILL_PROCESSES セッションで生成されたすべてのサブプロセスを削除します。
XTPU$M_LAST_TIME このビットは,DEC XTPU に対する最後の呼び出しである場合にだけセットしなければなりません。このビットをセットした後に再度 DEC XTPU を呼び出した場合,結果は予測できません。
XTPU$M_PRUNE_CACHE バッファにページが割り当てられていない仮想ファイル・マネージャ・キャッシュをすべて解放します。このオプションは,セッションで作成されたあと,現在は不要になったキャッシュを解放します。
XTPU$M_RESET_TERMINAL ターミナルを,DEC XTPU を起動したときの状態にリセットします。ターミナル・メールボックスおよびすべてのウィンドウが削除されます。リセットされたターミナルは,次に XTPU$INITIALIZE を呼び出したときに初期化し直されます。


1プリフィックスは XTPU$M_ または XTPU$V_ です。 XTPU$M_ は,ビットがセットされるマスクが特定のフィールドに対応することを示しています。 XTPU$V_ はビット番号です。
2単純な呼び出し可能インタフェースを使用する場合には, XTPU$CLOSE_SECTION はセットされません。そのため,XTPU$XTPU を複数回呼び出す場合でも,そのたびにセクション・ファイルをオープンしたりクローズしたりする必要はありません。


説明

クリーンアップ・ルーチン XTPU$CLEANUP は,DEC XTPU とのやりとりの最後に呼び出すルーチンです。このルーチンは DEC XTPU に対し,内部データ構造をクリーンアップし,次の呼び出しに備えるよう指示します。上記のフラグをセットまたはクリアすることで,このルーチンによってリセットされるものを制御することができます。

DEC XTPU の使用を終了する場合には,このルーチンを呼び出すことにより,メモリを解放し,ターミナルの設定を初期状態に戻しておかなければなりません。

XTPU$CLEANUP を呼び出したあと,すぐにユーザ・アプリケーションを終了する場合には,データ構造を削除しないでください。オペレーティング・システムがそれを自動的に削除します。データ構造の削除をオペレーティング・システムに任せることで,プログラムの性能が向上します。

  注意

  1. 単純なインタフェースを使用する場合には,DEC XTPU は以下のフラグを自動的にセットします。

    • XTPU$V_DELETE_BUFFERS

    • XTPU$V_DELETE_EXITH

    • XTPU$V_DELETE_JOURNAL

    • XTPU$V_DELETE_WINDOWS

    • XTPU$V_EXECUTE_FILE

    • XTPU$V_EXECUTE_PROC

    • XTPU$V_KILL_PROCESSES

    • XTPU$V_PRUNE_CACHE

    • XTPU$V_RESET_TERMINAL

  2. このルーチンがサクセス・ステータスを戻さなかった場合には,再度エディタを呼び出さないようにしなければなりません。



戻される条件値

XTPU$_SUCCESS 正常終了したことを示します。




コマンド・ラインを解析し,XTPU$INITIALIZE 用のアイテム・リストを作成します。

このルーチンは,CLI$DCL_PARSE を呼び出し,解析するコマンドとコマンド・テーブルを設定します。次に XTPU$PARSEINFO を呼び出し,XTPU$INITIALIZE 用のアイテム・リストを作成します。

ユーザのアプリケーションがコマンド・ラインを解析して DEC XTPU の操作とは無関係な情報を得る場合,XTPU$CLIPARSE を呼び出す前に,そうした情報をすべて取り出して使用してしまう必要があります。XTPU$CLIPARSE は呼び出される前に格納されていた解析情報をすべて破壊してしまうからです。


形式

XTPU$CLIPARSE string, fileio, call_user


戻り値



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


このルーチンはアイテム・リストのアドレスを返します。


引数



string

OpenVMS 用法 文字列
データ型 文字列
アクセス 読み取りのみ
受け渡し方 ディスクリプタによる


コマンド・ラインです。string 引数は,DEC XTPU コマンドのディスクリプタのアドレスです。

fileio

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


ファイル入出力ルーチンです。fileio 引数は,ファイル入出力ルーチンのデスクリプタのアドレスです。

call_user

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


USER ルーチンです。call_user 引数は,USER ルーチンのディスクリプタのアドレスです。




このルーチンはターミナルへのチャネルをクローズします。

形式

XTPU$CLOSE_TERMINAL


戻り値



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


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


引数

なし

説明

このルーチンは,CALL_USER 組込みプロシージャおよびそれに結び付けられた USER ルーチンにおいて,DEC XTPU のターミナルへのアクセスを制御するのに用いられます。USER ルーチンが XTPU$CLOSE_TERMINAL を呼び出すと,DEC XTPU はターミナルへのチャネルと付随するメールボックスのチャンネルとをクローズします。

USER ルーチンから制御が戻されると,DEC XTPU は自動的にターミナルへのチャネルを再オープンし,他のウィンドウで隠されていないウィンドウを再表示します。

USER ルーチンは,そのプログラム中でいつでも XTPU$CLOSE_TERMINAL を使用することができます。また,必要に応じて何度でも使用することができます。 XTPU$CLOSE_TERMINAL を使用したときに,すでにターミナルがクローズされている場合は,その呼び出しは無視されます。



戻される条件値

XTPU$_SUCCESS 正常終了したことを示します。




DEC XTPU エディタのメイン処理ルーチンです。このルーチンは,テキストとコマンドを読み取り,それを実行します。このルーチンを呼び出すと (XTPU$INITIALIZE を呼び出したあと),制御はDEC XTPU に渡されます。

形式

XTPU$CONTROL [integer]


戻り値



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


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


引数



integer

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


呼び出しプログラムがDEC XTPU に制御を渡した時に,"Editing Session is not being journaled" というメッセージが表示されないようにします。将来のバージョンとの互換性を保つために,真(奇数)の整数を指定してください。引数を省略した場合,ジャーナリングされていないときには, DEC XTPU はメッセージを表示します。


説明

このルーチンは編集セッションを制御します。このルーチンは,テキストとコマンドを読み取り,それを実行します。実行された編集内容を示すように,スクリーン上のウィンドウが更新されます。 XTPU$SPECIFY_ASYN_ACTION ルーチンを XTPU$TRIGGER_ASYN_ACTION ルーチンとともに使って,DEC XTPU を中断しユーザ・プログラムがコントロールを取り戻すようにすることもできます。

  注意
制御がユーザ・プログラムに戻されるのは,エラーが発生した場合,または QUIT 組込みプロシージャか EXIT 組込みプロシージャを実行したあとだけです。



戻される条件値

XTPU$_EXITING EXIT の結果として戻されます(省略時の条件ハンドラが設定されている場合)。
XTPU$_NONANSICRT 処理の中断の結果として戻されます。この条件値が戻されるのは,XTPU$_DISPLAYFILE を NODISPLAY に設定して DEC XTPU を呼び出し,スクリーン関係のコマンドを実行しようとしたときです。
XTPU$_QUITTING QUIT の結果として戻されます(省略時の条件ハンドラが設定されている場合)。
XTPU$_RECOVERFAIL 回復操作が異常終了したことを示します。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.