日本語OpenVMS
IMLIB/OpenVMS ライブラリ・
リファレンス・マニュアル


前へ 次へ 目次 索引



第 6 章
プログラムの開発

この章は,IMLIB を使ったプログラムの開発について書かれています。 IMLIB は,C および FORTRAN によるアプリケーションプログラムの開発をサポートしています。

6.1 ヘッダ・ファイル

IMLIB は,エラー・シンボル,KEY のシンボル,ACTION のシンボルを定義した以下のようなヘッダ・ファイルを提供しています。

SYS$LIBRARY:IM$DEF.H (C のヘッダファイル)
SYS$LIBRARY:IM$DEF.FOR (FORTRAN のヘッダファイル)

アプリケーションは,ソース・ファイルの中にヘッダ・ファイルを次のような形で取り込みます。

例:ヘッダ・ファイルの取り込み (C の場合)


 
 . 
 . 
 . 
 #include <IM$DEF.H> 
 . 
 . 
 . 
 

例:ヘッダ・ファイルの取り込み (FORTRANの場合)


 
 . 
 . 
 . 
 INCLUDE 'SYS$LIBRARY:IM$DEF.FOR' 
 . 
 . 
 . 
 

6.2 コンパイル・リンクの方法

ここでは,作成されたアプリケーション・プログラムの,コンパイルおよびリンクについて説明します。IMLIB は,シェアラブル・ライブラリの形式で次の場所に提供されています。
SYS$SHARE:IM$SHR.EXE

6.2.1 Cで書かれたアプリケーション・プログラム

C 言語で書かれたアプリケーション・プログラムが,現在のディレクトリに APPLICATION.C という名前で置かれている場合に,コンパイルおよびリンクは以下のように行われます。通常 APPLICATION.C は日本語ライブラリ (JSYSHR) を使っていますので,リンクのオプションには JSYSHR.EXE が含まれます。

なお,OpenVMS AXP オペレーティング・システムを利用している場合は, SYS$SHARE:VAXCRTL.EXE をリンクする必要はありません。


 
 $ CC APPLICATION.C 
 $ LINK APPLICATION,SYS$INPUT/OPTION 
 SYS$SHARE:VAXCRTL/SHARE 
 SYS$SHARE:IM$SHR/SHARE 
 SYS$SHARE:JSYSHR/SHARE 
 [CTRL/Z] 
 $ 
 

この結果 APPLICATION.EXE という実行イメージが現在のディレクトリに作成されます。

6.2.2 FORTRAN で書かれたアプリケーション・プログラム

FORTRAN 言語で書かれたアプリケーション・プログラムが,現在のディレクトリに APPLICATION.FOR という名前で置かれているとするとコンパイルおよびリンクは以下のように行われます。通常 APPLICATION.FOR は,日本語ライブラリ (JSYSHR) を使っていますので,リンクのオプションには JSYSHR.EXE が含まれます。


 
 $ FORTRAN APPLICATION.FOR 
 $ LINK APPLICATION,SYS$INPUT/OPTION 
 SYS$SHARE:IM$SHR/SHARE 
 SYS$SHARE:JSYSHR/SHARE 
 [CTRL/Z] 
 $ 
 

この結果 APPLICATION.EXE という実行イメージが現在のディレクトリに作成されます。


付録 A
IMLIBがサポートするKEYSYM

KEYSYM TO KEYCODEがサポートするKEYSYMを 表 A-1 に示します。

表 A-1 サポートされるKEYSYM
Byte3 Byte4 Range 説明 文字セット
000 032 --- 126 ASCII の表示文字 Latin-1
004 161 --- 223 すべての半角カナ文字 Kana
255 009 TAB Keyboard
255 013 RETURN Keyboard
255 081 LEFT Keyboard
255 082 UP Keyboard
255 083 RIGHT Keyboard
255 084 DOWN Keyboard
255 085 PREVIOUS Keyboard
255 086 NEXT Keyboard
255 096 SELECT Keyboard
255 098 DO Keyboard
255 099 INSERT HERE Keyboard
255 104 FIND Keyboard
255 106 HELP Keyboard
255 141 KEYPAD ENTER Keyboard
255 145 KEYPAD PF1 Keyboard
255 146 KEYPAD PF2 Keyboard
255 147 KEYPAD PF3 Keyboard
255 148 KEYPAD PF4 Keyboard
255 172 KEYPAD COMMA Keyboard
255 173 KEYPAD MINUS SIGN Keyboard
255 174 KEYPAD DECIMAL POINT Keyboard
255 176 KEYPAD DIGIT ZERO Keyboard
255 177 KEYPAD DIGIT ONE Keyboard
255 178 KEYPAD DIGIT TWO Keyboard
255 179 KEYPAD DIGIT THREE Keyboard
255 180 KEYPAD DIGIT FOUR Keyboard
255 181 KEYPAD DIGIT FIVE Keyboard
255 182 KEYPAD DIGIT SIX Keyboard
255 183 KEYPAD DIGIT SEVEN Keyboard
255 184 KEYPAD DIGIT EIGHT Keyboard
255 185 KEYPAD DIGIT NINE Keyboard
255 190 F1 Keyboard
255 191 F2 Keyboard
255 192 F3 Keyboard
255 193 F4 Keyboard
255 194 F5 Keyboard
255 195 F6 Keyboard
255 196 F7 Keyboard
255 197 F8 Keyboard
255 198 F9 Keyboard
255 199 F10 Keyboard
255 200 F11 Keyboard
255 201 F12 Keyboard
255 202 F13 Keyboard
255 203 F14 Keyboard
255 206 F17 Keyboard
255 207 F18 Keyboard
255 208 F19 Keyboard
255 209 F20 Keyboard
255 255 DELETE Keyboard
255  33 Kanji Keyboard
255  34 Muhenkan Keyboard
255  37 HiraganaHenkan Keyboard


付録 B
定義済のシンボル

IMLIB が定義するシンボルは,以下のヘッダ・ファイルとして提供されています。

B.1 エラー・シンボル

ライブラリが返すエラーのシンボルを 表 B-1 に示します。

表 B-1 エラー・シンボル
シンボル 意味
IM__SUCCESS 正常終了
IM__LASTACTION 複数 ACTION の最後の ACTION である
IM__NOPRINTABLE 表示される文字でない
IM__PARTIALKEY 複数キーの途中である
IM__KEYNOTDEFINED キーが定義されていない
IM__NOACTION 指定されたキーに ACTION が存在しない
IM__TRUNCATED 文字列が切り捨てられた
IM__NORECOVER リカバー STATE がない
IM__SYNTAXERR 構文エラー
IM__INSVIRMEM 仮想メモリが足りない
IM__CANNOTOPN ファイルがオープンできない
IM__ILLUNIT 正しくない UNIT 番号が指定された
IM__NOINDEX PROFILEファイルに INDEX が存在しない
IM__ILLFORMAT KEYBIND ファイルのフォーマットが間違っている
IM__FILNOTFND ファイルが見つからない
IM__NOKEYBIND KEYBIND のデータがセットされていない
IM__NOTKEYNAME KEY の名前を示す文字列が間違っている
IM__INVKEYCODE KEYCODE が正しくない
IM__ILLESCAPE エスケープ・シーケンスが正しくない
IM__UNSUPKEYSYM サポートされない KEYSYM が指定された
IM__READERR ファイルを読み込めない
IM__WRITEERR ファイルに書き込みができない
IM__KEYNOTSET GET ACTION の前に SET KEY が呼ばれていない
IM__INVSTRDES 文字列デスクリプタが正しくない
IM__ILLLEVEL KEYBIND ファイルのレベルが合わない
IM__FATERRLIB ライブラリの致命的なエラー
IM__INVCODESET 不正なコードセットが指定された

B.2 ACTIONを示すシンボル

ライブラリがサポートする ACTION のシンボルを 表 B-2 に示します。

表 B-2 ACTIONを示すシンボル
ACTION シンボル
CONVERT IM_ACTION_CONVERT
HIRAGANA IM_ACTION_HIRAGANA
KATAKANA IM_ACTION_KATAKANA
HANKAKU_KANA IM_ACTION_HANKAKU_KANA
ZENKAKU IM_ACTION_ZENKAKU
HANKAKU IM_ACTION_HANKAKU
UPPER IM_ACTION_UPPER
LOWER IM_ACTION_LOWER
CLA_HIRAGANA IM_ACTION_CLA_HIRAGANA
CLA_KATAKANA IM_ACTION_CLA_KATAKANA
CLA_HANKAKU_KANA IM_ACTION_CLA_HANKAKU_KANA
CLA_ZENKAKU IM_ACTION_CLA_ZENKAKU
CLA_HANKAKU IM_ACTION_CLA_HANKAKU
NEXT_CLAUSE IM_ACTION_NEXT_CLAUSE
PREV_CLAUSE IM_ACTION_PREV_CLAUSE
SHORTEN_CLAUSE IM_ACTION_SHORTEN_CLAUSE
EXTEND_CLAUSE IM_ACTION_EXTEND_CLAUSE
ECHO IM_ACTION_ECHO
MOVE_LEFT IM_ACTION_MOVE_LEFT
MOVE_RIGHT IM_ACTION_MOVE_RIGHT
DELETE IM_ACTION_DELETE
RESTORE_STRING IM_ACTION_RESTORE_STRING
RESTORE_ECHO IM_ACTION_RESTORE_ECHO
NONE IM_ACTION_NONE
START IM_ACTION_START
DONE IM_ACTION_DONE
NEXT_CANDIDATE IM_ACTION_NEXT_CANDIDATE
PREV_CANDIDATE IM_ACTION_PREV_CANDIDATE
HEAD IM_ACTION_HEAD
TAIL IM_ACTION_TAIL
SYMBOL IM_ACTION_SYMBOL
DEC_KANJI_CODE IM_ACTION_DEC_KANJI_CODE
START_SELECTED IM_ACTION_START_SELECTED

B.3 KEYを示すシンボル

ライブラリがサポートする KEY のシンボルを 表 B-3 に示します。

表 B-3 KEYを示すシンボル
KEY シンボル
NULL IM_KEY_NULL
CTRL_A IM_KEY_CTRL_A
CTRL_B IM_KEY_CTRL_B
CTRL_C IM_KEY_CTRL_C
CTRL_D IM_KEY_CTRL_D
CTRL_E IM_KEY_CTRL_E
CTRL_F IM_KEY_CTRL_F
CTRL_G IM_KEY_CTRL_G
CTRL_H IM_KEY_CTRL_H
TAB IM_KEY_CTRL_I
CTRL_J IM_KEY_CTRL_J
CTRL_K IM_KEY_CTRL_K
CTRL_L IM_KEY_CTRL_L
RETURN IM_KEY_CTRL_M
CTRL_N IM_KEY_CTRL_N
CTRL_O IM_KEY_CTRL_O
CTRL_P IM_KEY_CTRL_P
CTRL_Q IM_KEY_CTRL_Q
CTRL_R IM_KEY_CTRL_R
CTRL_S IM_KEY_CTRL_S
CTRL_T IM_KEY_CTRL_T
CTRL_U IM_KEY_CTRL_U
CTRL_V IM_KEY_CTRL_V
CTRL_W IM_KEY_CTRL_W
CTRL_X IM_KEY_CTRL_X
CTRL_Y IM_KEY_CTRL_Y
CTRL_Z IM_KEY_CTRL_Z
ESC IM_KEY_ESC
FS IM_KEY_FS
GS IM_KEY_GS
RS IM_KEY_RS
US IM_KEY_US
DEL IM_KEY_DEL
F6 IM_KEY_F6
F7 IM_KEY_F7
F8 IM_KEY_F8
F9 IM_KEY_F9
F10 IM_KEY_F10
F11 IM_KEY_F11
F12 IM_KEY_F12
F13 IM_KEY_F13
F14 IM_KEY_F14
HELP IM_KEY_HELP
DO IM_KEY_DO
F17 IM_KEY_F17
F18 IM_KEY_F18
F19 IM_KEY_F19
F20 IM_KEY_F20
KP0 IM_KEY_KP0
KP1 IM_KEY_KP1
KP2 IM_KEY_KP2
KP3 IM_KEY_KP3
KP4 IM_KEY_KP4
KP5 IM_KEY_KP5
KP6 IM_KEY_KP6
KP7 IM_KEY_KP7
KP8 IM_KEY_KP8
KP9 IM_KEY_KP9
MINUS IM_KEY_MINUS
COMMA IM_KEY_COMMA
PERIOD IM_KEY_PERIOD
ENTER IM_KEY_ENTER
PF1 IM_KEY_PF1
PF2 IM_KEY_PF2
PF3 IM_KEY_PF3
PF4 IM_KEY_PF4
LEFT IM_KEY_LEFT
UP IM_KEY_UP
RIGHT IM_KEY_RIGHT
DOWN IM_KEY_DOWN
PREV_SCREEN IM_KEY_PREV_SCREEN
NEXT_SCREEN IM_KEY_NEXT_SCREEN
SELECT IM_KEY_SELECT
INSERT_HERE IM_KEY_INSERT_HERE
FIND IM_KEY_FIND
REMOVE IM_KEY_REMOVE
SHIFT + [↑]キー(前文節移動) IM_KEY_SHFT_UP
SHIFT + [↓]キー(次文節移動) IM_KEY_SHFT_DOWN
SHIFT + [←]キー(文節縮小) IM_KEY_SHFT_LEFT
SHIFT + [→]キー(文節拡大) IM_KEY_SHFT_RIGHT
CTRL + [↑]キー IM_KEY_CTRL_UP
CTRL + [↓]キー IM_KEY_CTRL_DOWN
CTRL + [←]キー IM_KEY_CTRL_LEFT
CTRL + [→]キー IM_KEY_CTRL_RIGHT
ALT + [↑]キー IM_KEY_ALT_UP
ALT + [↓]キー IM_KEY_ALT_DOWN
ALT + [←]キー IM_KEY_ALT_LEFT
ALT + [→]キー IM_KEY_ALT_RIGHT
CTRL + ALT + [↑]キー IM_KEY_CTRL_ALT_UP
CTRL + ALT + [↓]キー IM_KEY_CTRL_ALT_DOWN
CTRL + ALT + [←]キー IM_KEY_CTRL_ALT_LEFT
CTRL + ALT + [→]キー IM_KEY_CTRL_ALT_RIGHT
CTRL + SHIFT + [↑]キー IM_KEY_CTRL_SHFT_UP
CTRL + SHIFT + [↓]キー IM_KEY_CTRL_SHFT_DOWN
CTRL + SHIFT + [←]キー IM_KEY_CTRL_SHFT_LEFT
CTRL + SHIFT + [→]キー IM_KEY_CTRL_SHFT_RIGHT
SHIFT + ALT + [↑]キー IM_KEY_SHFT_ALT_UP
SHIFT + ALT + [↓]キー IM_KEY_SHFT_ALT_DOWN
SHIFT + ALT + [←]キー IM_KEY_SHFT_ALT_LEFT
SHIFT + ALT + [→]キー IM_KEY_SHFT_ALT_RIGHT
CTRL + SHIFT + ALT + [↑]キー IM_KEY_CTRL_SHFT_ALT_UP
CTRL + SHIFT + ALT + [↓]キー IM_KEY_CTRL_SHFT_ALT_DOWN
CTRL + SHIFT + ALT + [←]キー IM_KEY_CTRL_SHFT_ALT_LEFT
CTRL + SHIFT + ALT + [→]キー IM_KEY_CTRL_SHFT_ALT_RIGHT
変換 IM_JFK_HENKAN
SHIFT + 変換(前候補) IM_JFK_SHFT_MAEKOUHO
CTRL + 変換 IM_JFK_CTRL_HENKAN
ALT + 変換 IM_JFK_ALT_HENKAN
CTRL + SHIFT + 変換 IM_JFK_CTRL_SHFT_HENKAN
CTRL + ALT + 変換 IM_JFK_CTRL_ALT_HENKAN
CTRL + SHIFT + ALT + 変換 IM_JFK_CTRL_SHFT_ALT_HENKAN
無変換 IM_JFK_MUHENKAN
SHIFT + 無変換(入力状態へ戻る) IM_JFK_SHFT_MUHENKAN
CTRL + 無変換 IM_JFK_CTRL_MUHENKAN
ALT + 無変換(記号変換) IM_JFK_ALT_MUHENKAN
CTRL + SHIFT + 無変換 IM_JFK_CTRL_SHFT_MUHENKAN
CTRL + ALT + 無変換 IM_JFK_CTRL_ALT_MUHENKAN
CTRL + SHIFT + ALT + 無変換 IM_JFK_CTRL_SHFT_ALT_MUHENKAN
ひらがな変換 IM_JFK_HIRAGANA
SHIFT + ひらがな変換(カタカナ変換) IM_JFK_KATAKANA
CTRL + ひらがな変換(半角カナ変換) IM_JFK_CTRL_HIRAGANA
ALT + ひらがな変換 IM_JFK_ALT_HIRAGANA
CTRL + SHIFT + ひらがな変換
(半角カナ変換)
IM_JFK_CTRL_SHFT_HIRAGANA
CTRL + ALT + ひらがな変換 IM_JFK_CTRL_ALT_HIRAGANA
CTRL + SHIFT + ALT + ひらがな変換 IM_JFK_CTRL_SHFT_ALT_HIRAGANA
SS3 IM_KEY_SS3
CSI IM_KEY_CSI
VOID IM_KEY_VOID
TYPING_KEYS IM_KEY_TYPING_KEYS
OTHERS IM_KEY_OTHERS


前へ 次へ 目次 索引