DEC XTPUはスクリーン向きエディタのための一般的な機能の他に, 以下の特殊機能も備えています。
すなわち,DEC XTPUは日本語のテキスト処理アプリケーションを構築するための 基礎となるものであると考えることができます。 日本語EVEという編集インターフェイスは, DEC XTPUの上にレイヤ構造として作成されたインターフェイスの例であり, DEC XTPU言語で書かれています。
また,テキスト・エディタの使用経験の豊富なユーザにとっても, 日本語EVEは強力で効率のよいエディタです。高度な編集機能は, 日本語EVEコマンド・ラインにコマンドを入力することにより実行できます。 このコマンドを使用すれば,DEC XTPUの多くの特殊な機能を使用することができます。 日本語EVEインターフェイスについての詳しい説明は,およびを参照してください。
DEC XTPU言語はブロック構造になっているため,簡単に学習でき, また使用できます。DEC XTPU言語には多くのデータ・タイプ,関係演算子, エラー処理機能,繰り返しやCASE文,重要な機能を実行するための広範囲にわたる 組込みプロシージャなどがあります。コメントはコメント文字(!)によって 示すことができるので,プロシージャに関する内部的な記述を, プロシージャに含めることができます。また,ユーザ作成デバッグ・プログラムを 用いてプロシージャをデバッグすることもできます。
this_var := 'This can be a string of your choice';
次のステートメントは,ウィンドウ・データ・タイプを変数lower_caseに代入します。
ウィンドウはスクリーンの1行目から始まる15行を使用し,
ステータス・ラインはOFF(表示されない)です。
x := CREATE_WINDOW(1, 15, OFF)
多くのDEC XTPUデータ・タイプ(たとえば学習タイプやパターン)は,通常の
プログラミング言語で使用されているデータ・タイプと異なっています。
DEC XTPUのデータ・タイプは表 1-1に示すとおりです。
| データ・タイプ | 説明 |
|---|---|
| ARRAY | 要素の集まり |
| BUFFER | テキスト・レコードの集まり− BUFFERは編集作業ができる範囲を示します。 |
| INTEGER | 整数−有効な値は,-2,147,483,648から 2,147,483,647です。 |
| KEYWORD | DEC XTPUコンパイラにとって特別の意味がある予約語 |
| LEARN | DEC XTPUキーストロークの集まり |
| MARKER | バッファ内の文字位置 |
| PATTERN | 一連の文字−パターン演算子と パターン組込みプロシージャは結果としてこのデータ・タイプを通知します。 PATTERNはバッファ内の特定のテキストを見つけるために, SEARCH組込みプロシージャで使用されます。 |
| PROCESS | VMSサブプロセス |
| PROGRAM | 実行可能なDEC XTPUステートメント のコンパイルされた形式 |
| RANGE | 2つのマーカの間に存在するすべてのテキスト (2つのマーカも含む) |
| STRING | 文字列 |
| UNSPECIFIED | 変数宣言を持つコードがコンパイルされた後のグローバル変数の初期状態 |
| WINDOW | スクリーンを分割した領域−ウィンドウは, テキスト・バッファのうちスクリーン上に現れている領域です。 |
DEC XTPUデータ・タイプについての詳しい説明は, 『Guide to the DEC Text Processing Utility』および本書の 第2章 "DEC XTPUのデータ・タイプ" を参照してください。
| モジュール宣言 | MODULE−IDENT−ENDMODULE |
| プロシージャ宣言 | PROCEDURE−ENDPROCEDURE |
| 定数宣言 | CONSTANT |
| グローバル変数宣言 | VARIABLE |
| ローカル変数宣言 | LOCAL |
DEC XTPU言語の宣言文についての詳しい説明は, 『Guide to the DEC Text Processing Utility』および本書の 第3章を参照してください。
| 代入ステートメント | := |
| 繰返しステートメント | LOOP−EXITIF−ENDLOOP |
| 条件ステートメント | IF−THEN−ELSE−ENDIF |
| ケース・ステートメント | CASE−ENDCASE |
| エラー・ステートメント | ON_ERROR−ENDON_ERROR |
DEC XTPU言語ステートメントについての詳しい説明は, 『Guide to the DEC Text Processing Utility』および本書の 第3章を参照してください。
独自のプロシージャを作成するときには,組込みプロシージャを使うことができます。 また日本語EVEから組込みプロシージャを使うこともできます。 DEC XTPU組込みプロシージャについての詳しい説明は, 『DEC Text Processing Utility Reference Manual』および本書の 第4章を参照してください。
プロシージャを作成するときには,以下のガイドラインに従ってください。
! This procedure moves the editing
! position to the top of the buffer
PROCEDURE user_top
POSITION (BEGINNING_OF(CURRENT_BUFFER));
MESSAGE (" 現在のバッファは "+ GET_INFO (CURRENT_BUFFER, "name") + " です");
ENDPROCEDURE
このプロシージャをコンパイルしておけば,user_topという名前を使ってこ
のプロシージャを呼び出すことができます。
DEC XTPUは日本語端末VT280シリーズ(DEC漢字1983年版)および VT382でスクリーン編集機能をサポートします。日本語端末VT280シリーズ (DEC漢字1978年版)は,DEC漢字1983年版で変更になった文字が表示されない, という制限のもとでサポートされます。
DEC XTPUのサポートする日本語端末に関する制限事項については, 付録 Aを参照してください。
$ EDIT/XTPU text_file.lis
このコマンドは text_file.lis というファイルを編集のためにオープンします。
コマンド・ラインには1つの入力ファイルだけしか指定できません。
追加ファイルは,編集セッションでDEC XTPUの内部から
READ_FILE組込みプロシージャを使って指定することができます。
上記のコマンドでDEC XTPUを呼び出す場合には,省略時の 編集インターフェイスが使用されます(/NOSECTIONを指定しなかった場合)。 DEC XTPUの省略時の編集インターフェイスは日本語EVEです。 使用されるインターフェイス名(ここでは日本語EVE (JEVE))をコマンドとして, DEC XTPUを呼び出すことができるように, 以下に示すようなシンボルを定義することをお勧めします。
$ JEVE :== EDIT/XTPU
| 修飾子 | 省略時の値 |
|---|---|
| /CODESET=codeset_keyword | /CODESET=ISO_LATIN1 |
| /[NO]COMMAND[=filespec] | /COMMAND=XTPU$COMMAND |
| /[NO]CREATE | /CREATE |
| /[NO]DEBUG[=filespec] | /NODEBUG |
| /[NO]DISPLAY[=keyword] | /DISPLAY=CHARACTER_CELL |
| /[NO]INITIALIZATION[=filespec] | /NOINITIALIZATION |
| /[NO]JOURNAL[=filespec] | /[NO]JOURNAL |
| /[NO]KANJI_DICTIONARY[=filespec] | /KANJI_DICTIONARY |
| /[NO]MODIFY | /MODIFY |
| /[NO]OUTPUT[=filespec] | /OUTPUT=input_file.type |
| /[NO]READ_ONLY | /NOREAD_ONLY |
| /[NO]RECOVER | /NORECOVER |
| /[NO]SECTION[=filespec] | /SECTION=XTPU$SECTION |
| /START_POSITION=(line,column) | /START_POSITION=(1,1) |
| /[NO]WRITE | /WRITE |
DEC XTPUコマンドの修飾子についての詳しい説明は, 第5章を参照してください。
| ファイル・タイプ: | .TPU |
| DEC XTPU修飾子: | /COMMAND=filespec |
| 省略時のファイル: | 現在のディレクトリの XTPU$COMMAND.TPU |
/COMMAND修飾子についての詳しい説明は 『Guide to the DEC Text Processing Utility』および 本書の第5.5.2項を参照してください。
| ファイル・タイプ: | .XTPU$SECTION |
| DEC XTPU修飾子: | /SECTION=filespec |
| 省略時のファイル: | SYS$LIBRARYディレクトリの JEVE$SECTION_V3.XTPU$SECTION |
省略時設定は,/SECTION=XTPU$SECTIONです。日本語OpenVMSでは,起動時に XTPU$SECTIONという論理名がJEVE$SECTION_V3に定義されます。このため, DCLレベルでEDIT/XTPUコマンドを入力すると,日本語EVEエディタが起動されます。 日本語EVEインターフェイスを使用しないときには,別の セクション・ファイルを指定するか,/NOSECTION修飾子を指定しなければなりません。
注意
/NOSECTION修飾子を指定してDEC XTPUを呼び出した場合には, DEC XTPUに対するインターフェイスを与えるためのバイナリ・ファイルの読み取りは 実行されません。この場合には,[Return]や <X] キーさえも 定義されていない状態になります。 新しいセクション・ファイルを作成しているときに, 既存のセクション・ファイルからプロシージャや変数, あるいは定義を含みたくない場合には,/NOSECTION 修飾子を使用します。
/SECTION修飾子についての詳しい説明は 『Guide to the DEC Text Processing Utility』および 本書の第5.5.12項を参照してください。
| ファイル・タイプ: | .EVE |
| DEC XTPU修飾子: | /INITIALIZATION=filespec |
| 省略時のファイル: | 現在のディレクトリまたはSYS$LOGINディレクトリの JEVE$INIT_V3.EVE |
省略時の設定は,/INITIALIZATIONです。 論理名JEVE$INIT_V3に任意のファイルを定義して使うこともできます。 イニシャライゼーション・ファイルはとても簡単に作成できますが, セクション・ファイルやコマンド・ファイルを使用したときよりも, 起動に時間がかかります。 /NOINITIALIZATION修飾子が指定されない限り, DEC XTPUはイニシャラゼーション・ファイルを読み込もうとします。
/INITIALIZATION修飾子についての詳しい説明は 『Guide to the DEC Text Processing Utility』および本書の 第5.5.6項を,また, イニシャライゼーション・ファイルの作成については 『日本語EVE ユーザーズ・ガイド』の第7.12節 "イニシャライゼーション・ファイルの作成"を参照してください。
初期化ファイルの使用法
コマンド・ファイルとセクション・ファイルのどちらか一方,または両方を 使用することにより,既存のインターフェイスを変更または拡張することができます。
$ DIRECTORY XTPU$EXAMPLES:JEVE$*.TPU
システムにこのファイルが含まれていないときには,
システム管理者に連絡してください。