# 日本語 Compaq OpenVMS
日本語入力プロセス 利用者の手引き

前へ | 次へ | 目次 | 索引

# 第 3 章
かな漢字変換入力

この章では，かな漢字変換入力について説明します。

# 3.1 かな漢字変換入力ができる状態

FIP を起動しても，必ずしもすべてかな漢字変換入力ができるようにはなりません。特殊な読み込み処理をしているアプリケーションの場合には，FIP のトラップにはかからずにそのままの入力処理が実行されます。つまり， 図 1-1 において，FIDRIVER にトラップされずに，TTDRIVER がそのまま処理をしてしまう場合があります。

かな漢字変換入力ができる状態であるかどうかを見るためには，PROFILE の中で変換対象文字列のビデオ属性の指定を，反転 (reverse)，下線 (underline) 等に設定しておけば，その設定のビデオ属性で表示された場合に，かな漢字変換入力が可能であることがわかります。

日本語 Compaq OpenVMS が提供する PROFILE では，かな漢字変換可能な場合は強調 (bold) または下線 (underline) になります。

# 3.2 入力操作

入力操作は，通常の日本語入力エディタ等と同様です。ただし，エディタと違う点は，PROFILE で設定したキー定義ファイルに従って，変換処理ができるということです。

日本語 Compaq OpenVMS は，あらかじめ作成されたキー定義を 4 種類提供します。ユーザは簡単な操作で，これらのキー定義のうちの 1 つを選択して使用することができます。ユーザが何も変更しなかったときには，JVMS キーが使用されます。

1. JVMSキー

   日本語 Compaq OpenVMS 標準のキー定義です。JVMS キーを使うと，かな漢字変換キーと VMS の行編集キーとが重ならないという特徴があります。詳しくは，『 日本語ライブラリ 利用者の手引き 』を参照してください。

2. EVEJキー

   EVEJ エディタのキー定義です。日本語 EVE の EVEJ キーパッド・モードで使用されています。詳しくは『 日本語 EVE ユーザーズ・ガイド 』を参照してください。

3. LEIAキー

   LEIA エディタのキー定義です。数字キーパッドを使ってかな漢字変換を行います。詳しくは，『 日本語ライブラリ 利用者の手引き 』を参照してください。

4. TAROキー

   ワープロ・ソフトの一太郎に似たキー定義です。
   (注：一太郎は株式会社ジャストシステムの登録商標です。)

# 3.3 キー定義を選択する方法

キー定義を使用する場合には，論理名 IM$PROFILE を次のように定義します。ユーザが何も選択しない場合には，キー定義は JVMS キーが使用されます。

- JVMS キーを使用する場合

        $DEFINE IM$PROFILE IM$PROFILE_JVMS

- EVEJ キーを使用する場合

        $DEFINE IM$PROFILE IM$PROFILE_EVEJ

- LEIA キーを使用する場合

        $DEFINE IM$PROFILE IM$PROFILE_LEIA

- TARO キーを使用する場合

        $DEFINE IM$PROFILE IM$PROFILE_TARO

この定義をユーザの LOGIN.COM に入れておくと，選択したキー定義を以後のセッションで使用することができます。

新しいキー定義をアプリケーションで使用するには，アプリケーションを再起動してください。

なお，これらの設定は日本語環境設定ユーティリティー (JSY$CONTROL) を使うと簡単に設定することができます。詳しくは『日本語ユーティリティ 利用者の手引き』を参照してください。

# 第 4 章
PROFILE の設定

PROFILE は，かな漢字変換環境設定の情報が書かれたテキスト・ファイルです。ユーザは，システムが提供する PROFILE またはユーザ独自の PROFILE のどちらでも使用することができます。

# 4.1 PROFILEの指定

FIP でのかな漢字変換の環境設定は，IMLIB の環境設定規約に従います。したがって IMLIB が規定している，PROFILE という環境設定用のテキスト・ファイルによって，かな漢字変換環境を定義します。この PROFILE を指定するために，論理名 IM$PROFILE を使用します。各ユーザの設定に関しては，『 ¥æ¡¼¥¶¡&brvgar;¥¡¼ÄêµÁ ÍøÍÑ¼Ô¤Î¼ê°ú¤ 』を参照してください。

# 4.2 独自のPROFILEの作成

FIP は，PROFILE の中のいくつかのキーワードを使用して，かな漢字変換の操作を行います。FIP のサポートする INDEX と値の一覧は， 付録 A を参照してください。以下に，キーワードの設定方法を記述します。

## 4.2.1 かな漢字変換用のキー定義

PROFILE 内の該当する INDEX 名
DEC-JAPANESE.KEY.keybind

FIP は，かな漢字変換用のキーとして IMLIB の提供する KEYBIND ファイルを使用します。したがって，IMLIB で規定されたキー定義ファイルの所在を， PROFILE の中に保持しておく必要があります ( 例 4-1 参照)。

例 4-1 PROFILE内でのKEYBINDファイル指定例
            im$profile.dat
            +---------------------------------------------------------------+
            | DEC-JAPANESE.KEY.keybind : IM$KEY_EVEJ_LEVEL2.IM$DAT          |
            | DEC-JAPANESE.KEY.keybind_1 : IM$KEY_EVEJ.IM$DAT               |
            |                       ・                                      |
            |                       ・                                      |
            |                       ・                                      |
            +---------------------------------------------------------------+

この例では，KEYBINDファイルに， EVEJ キー定義ファイル (IM$KEY_EVEJ_LEVEL2.IM$DAT) を指定しています。

INDEX の "DEC-JAPANESE.KEY.keybind" で指定した KEYBIND ファイルが正しくなかった場合，この例では次の行の INDEX "DEC-JAPANESE.KEY.keybind_1" で指定した別の KEYBIND ファイル (IM$KEY_EVEJ.IM$DAT) を用います。一般に KEYBIND ファイルのロードに失敗した場合は， INDEX の "DEC-JAPANESE.KEY.keybind_1" のように， "_(アンダーバー)数字" の付いた INDEX を 1 から 9 まで順にさがします。

PROFILE 内で指定した複数の KEYBIND ファイルがいずれも正しくなかった場合は， FIP を正常に起動することはできません。KEYBIND ファイルに関しては，「ユーザ・キー定義 利用者の手引き」を参照してください。

また，この設定で SYS$LOGIN 以外にある KEYBIND ファイルを指定する場合，ディレクトリ名にプロセス論理名，あるいはジョブ論理名を指定することはできません。FIP では，これらの論理名を解釈しません。

## 4.2.2 前編集領域(pre-edit area)の指定

PROFILE 内の該当する INDEX 名
DEC-JAPANESE.DISP.preEditRow
DEC-JAPANESE.DISP.preEditColumn

FIP は，通常の文字列の入力の流れを途中でとらえて，入力文字をかなや漢字に変換し，元の入力の流れに戻す機能を提供するものですが，かなや漢字に変換するときに，変換作業を画面上で行うための領域を必要とします。これを FIP では，"前編集領域 ( pre-edit area )" と呼び PROFILE で指定する必要があります。( 例 4-2 参照)。

通常は，端末画面のカラム位置，行位置を整数値で PROFILE 内で指定しますが，画面のステータス・ライン，すなわち 25 行目を前編集領域として設定したい場合， INDEX の "DEC-JAPANESE.DISP.preEditRow" に "status" を指定します。

例 4-2 PROFILE内での前編集領域の指定例
            im$profile.dat
            +---------------------------------------------------------------+
            |                       ・                                      |
            | DEC-JAPANESE.DISP.preEditRow : 24                             |
            | DEC-JAPANESE.DISP.preEditColumn : 1                           |
            |                       ・                                      |
            |                       ・                                      |
            |                       ・                                      |
            +---------------------------------------------------------------+

この例では，前編集領域は 24 行 1 列目が開始点として設定されています。ここで設定された行数や列数が，端末画面の上限値を越えている場合には， FIP は自動的に端末画面の最大値に設定し直します。さらに，特別な場合として "current" という文字列(小文字)が許されます。このキーワードの意味は，"現在カーソルの存在する位置を，前編集領域として使用してください" ということです。

注意 あらかじめ決められた機能を表す文字列を，一般的にキーワードと呼んでいます。 PROFILE の中では，"DEC-JAPANESE.DISP.preEditRow" 等もキーワードですが， IMLIB では，それらを特別に INDEX と呼んでいます。

## 4.2.3 変換領域のビデオ属性

PROFILE 内の該当する INDEX 名
DEC-JAPANESE.DISP.inputRendition
DEC-JAPANESE.DISP.currentClauseRendition
DEC-JAPANESE.DISP.leadingClauseRendition
DEC-JAPANESE.DISP.trailingClauseRendition
DEC-JAPANESE.DISP.kanaRendition

変換領域とは，" かな漢字変換の対象となる入力文字領域 " のことです。一般的に，入力文字列自体には何のマークもついていないために，どの文字列が現在の変換対象文字列であるかはわかりません。したがって，変換入力ができる多くのアプリケーションにおいては，変換対象文字列の表示ビデオ属性を，他の文字列と区別することによって，ユーザが変換対象文字列を認知できるようにしてあります。

たとえば，次のような表示だけでは，変換対象文字列がどれかはわかりません。

                       aiueo

次のような表示であれば，" ueo " が変換対象であることがわかります。 FIP では，この変換領域のビデオ属性を PROFILE によって指定する必要があります ( 例 4-3 参照)。

                       aiueo

例 4-3 PROFILE内での変換領域のビデオ属性指定例
            im$profile.dat
            +---------------------------------------------------------------+
            |                       ・                                      |
            | DEC-JAPANESE.DISP.inputRendition : bold                       |
            | DEC-JAPANESE.DISP.currentClauseRendition : reverse            |
            | DEC-JAPANESE.DISP.leadingClauseRendition : none               |
            | DEC-JAPANESE.DISP.trailingClauseRendition : none              |
            | DEC-JAPANESE.DISP.kanaRendition : bold                        |
            |                       ・                                      |
            |                       ・                                      |
            |                       ・                                      |
            +---------------------------------------------------------------+

この例では，変換対象文字列を高輝度 ("bold")，現在の変換対象文節を反転 ("reverse")，変換対象文字列で，現在の変換対象文節より前に存在する文字列を通常の表示 ("none")，現在の変換対象文節より後ろに存在する文字列を，通常の表示 ("none")，によって表示することを指定します。特に，端末から入力された文字をひらがな，あるいはカタカナ変換した場合の変換領域のビデオ属性を "kanaRendition" で指定することができます。 例 4_3 ではひらがな，あるいはカタカナ変換した場合のビデオ属性を高輝度 ("bold") にしています。

## 4.2.4 ASCII 文字エコー・モードの指定

PROFILE 内の該当する INDEX 名
DEC-JAPANESE.ECHO.ascii

通常の端末は，ASCII 文字(アルファベット及び特殊記号)の入力に対して，半角の ASCII 文字をエコー文字として端末に表示します。たとえば，キーボードの " k " というキーを押せば，端末の画面上に " k " という文字が表示されます。一部のワードプロセッサ等では，このエコー文字を全角の漢字コードに変換してから表示するものがあります。この機能を提供するために IMLIB は，ASCII 文字のエコー・モードを設定できるように，PROFILE の INDEX として，ascii を用意しています。ここで指定できるキーワードは，hankaku (半角＝通常のエコー文字) または， zenkaku (全角＝全角の漢字コードに対応) のどちらかです ( 例 4-4 参照)。

例 4-4 PROFILE内でのASCII文字の表示モードの設定例
            im$profile.dat
            +---------------------------------------------------------------+
            |                       ・                                      |
            | DEC-JAPANESE.ECHO.ascii : hankaku                             |
            |                       ・                                      |
            |                       ・                                      |
            |                       ・                                      |
            +---------------------------------------------------------------+

この例では「半角でASCII 文字を表示する」ことを指定しています。

## 4.2.5 かなキー入力時のエコー文字の指定

PROFILE 内の該当する INDEX 名
DEC-JAPANESE.ECHO.kana

かなキーを用いて文字入力する場合，エコーバックされる文字の指定をします。 "hiragana" あるいは "katakana" を指定すると，それぞれひらがな，カタカナがエコーされます。また，半角カタカナをエコーバックさせる場合は，"jiskana" を指定します ( 例 4-5 を参照)。

例 4-5 PROFILE内でかなキー入力時のエコー文字の指定例
            im$profile.dat
            +---------------------------------------------------------------+
            |                       ・                                      |
            | DEC-JAPANESE.ECHO.kana : hiragana                             |
            |                       ・                                      |
            |                       ・                                      |
            |                       ・                                      |
            +---------------------------------------------------------------+

この例では，かなキーからひらがながエコーバックされます。

## 4.2.6 自動ローマ字かな変換の指定

PROFILE 内の該当する INDEX 名
DEC-JAPANESE.ECHO.autoRomanKana

FIPは，文字入力時にローマ字からかな文字に自動的に変換し，そのかな文字を端末に表示する機能を持っています。たとえばユーザが，次のように 5 文字のキー入力を行った場合，そのローマ字に対応するかな文字が，逐次的に端末に表示されます。

                       aiueo

この場合は，次のように端末に表示されることになります。

                       あいうえお

この自動ローマ字かな変換を，PROFILE で指定する場合は， 例 4-6 のようになります。

例 4-6 PROFILE内での自動ローマ字かな変換の指定例
            im$profile.dat
            +---------------------------------------------------------------+
            |                       ・                                      |
            | DEC-JAPANESE.autoRomanKana    :   on                          |
            |                       ・                                      |
            |                       ・                                      |
            |                       ・                                      |
            +---------------------------------------------------------------+

この例では，端末から入力されるローマ字を，ひらがなに自動変換することを指定しています。

## 4.2.7 文節拡大，文節縮小に関する動作の指定

PROFILE 内の該当する INDEX 名
DEC-JAPANESE.OUTRANGE.clauseSize

文節の長さを変更する際，以下の場合における動作の指定をします。

1. 文節の大きさが最小になっているときに，「文節縮小」キーが押された場合

2. 文節の大きさが最大になっているときに，「文節拡大」キーが押された場合

値に "none" を指定した場合は何も実行しません。 "rotate" が指定されると，1 の場合は文節の大きさが最大に， 2 の場合は文節の大きさが最小になります。 "done" のときは，現在の変換を終了して次の変換入力を待ちます ( 例 4-7 参照)。

例 4-7 PROFILE内での文節のサイズの変換動作の指定例
            im$profile.dat
            +---------------------------------------------------------------+
            |                       ・                                      |
            | DEC-JAPANESE.OUTRANGE.clauseSize  :  none                     |
            |                       ・                                      |
            |                       ・                                      |
            |                       ・                                      |
            +---------------------------------------------------------------+

この例では，1，2 の場合に「何も実行しない」ことを指定しています。

前へ | 次へ | 目次 | 索引