タイトルおよびコピーライト情報 |
まえがき |
対象読者 |
新規機能と変更事項 |
本書の構成 |
関連ドキュメントおよび標準 |
表記法 |
1 | 国際化ソフトウェア開発の概要 |
1.1 | 言語宣言 |
1.1.1 | 地域化 |
1.2 | 言語 |
1.2.1 | 文字分類 |
1.2.2 | 大文字と小文字の変換 |
1.2.3 | メッセージ・カタログ |
1.3 | 文化的データ |
1.3.1 | 言語情報 |
1.4 | 文字セット |
1.4.1 | 照合順序 |
1.4.2 | 文字と文字列 |
1.4.3 | ポータブル文字セット |
1.4.4 | ユニバーサル文字セット |
2 | 国際化ソフトウェアの開発 |
2.1 | ロケールの使用 |
2.2 | コードセットの使用 |
2.2.1 | データの透過性の確保 |
2.2.2 | コード内リテラルの使用 |
2.2.3 | マルチバイト文字の操作 |
2.2.4 | マルチバイト文字データとワイド文字データ間の変換 |
2.2.5 | ソースおよび実行コードセットにおけるマルチバイト文字の規則 |
2.2.6 | 文字の分類 |
2.2.7 | 文字の変換 |
2.2.8 | 文字列の比較 |
2.3 | 文化的データの処理 |
2.3.1 | langinfo データベース |
2.3.2 | langinfo データベースの照会 |
2.3.3 | ローカルな習慣に合った日付および時刻文字列の生成と解釈 |
2.3.4 | 金額値の書式付け |
2.3.5 | プログラム独自の形式による数値の書式付け |
2.3.6 | 他の処理における langinfo データベースの使用 |
2.4 | テキストの表示と入力の処理 |
2.4.1 | メッセージの作成と使用 |
2.4.2 | 出力テキストの書式付け |
2.4.3 | 入力テキストの走査 |
2.5 | 実行時環境へのロケールのバインド |
2.5.1 | システムまたはユーザのロケール・セットへのバインド |
2.5.2 | プログラム実行時のロケールの変更 |
3 | メッセージ・カタログの作成と使用 |
3.1 | メッセージ・テキスト・ソース・ファイルの作成 |
3.1.1 | 一般規則 |
3.1.2 | メッセージ・セット |
3.1.3 | メッセージ・エントリ |
3.1.4 | quote ディレクティブ |
3.1.5 | コメント行 |
3.1.6 | メッセージ・スタイルのガイドライン |
3.2 | 既存のプログラムからのメッセージ・テキストの抽出 |
3.3 | メッセージ・ソース・ファイルの編集と翻訳 |
3.4 | メッセージ・カタログの生成 |
3.4.1 | mkcatdefs コマンドの使用法 |
3.4.2 | gencat コマンドの使用法 |
3.4.3 | メッセージ・カタログの設計と保守に関する留意点 |
3.5 | メッセージとロケール・データの表示 |
3.6 | プログラムからのメッセージ・カタログへのアクセス |
3.6.1 | メッセージ・カタログのオープン |
3.6.2 | メッセージ・カタログのクローズ |
3.6.3 | プログラム・メッセージの読み取り |
4 | curses ライブラリ・ルーチンを使用したワイド文字の処理 |
4.1 | curses ウィンドウへのワイド文字の書き込み |
4.1.1 | ワイド文字を追加 (上書き) し,カーソルを進める |
4.1.2 | ワイド文字を (上書きせずに) 挿入し,カーソルを進めない |
4.2 | curses ウィンドウへのワイド文字列の書き込み |
4.2.1 | ワイド文字列を追加 (上書き) し,カーソルを進めない |
4.2.2 | ワイド文字列を追加 (上書き) し,カーソルを進める |
4.2.3 | ワイド文字列を (上書きせずに) 挿入し,カーソルを進めない |
4.3 | curses ウィンドウからのワイド文字の削除 |
4.4 | curses ウィンドウからのワイド文字の読み取り |
4.5 | curses ウィンドウからのワイド文字列の読み取り |
4.5.1 | 属性付きのワイド文字列の読み取り |
4.5.2 | 属性なしでのワイド文字列の読み取り |
4.6 | 端末からの文字列の読み取り |
4.7 | キーボードからのワイド文字の読み取りまたはキューイング |
4.8 | curses ウィンドウでの書式付きテキストの変換 |
4.9 | curses ウィンドウでの書式付きテキストの表示 |
5 | 国際化対応の X,Xt,および Motif アプリケーションの作成 |
5.1 | Xt イントリンシクス・ライブラリの国際化機能の使用 |
5.1.1 | Xt 関数によるロケールの設定 |
5.1.2 | Xt 関数におけるフォントセット・リソースの使用 |
5.1.3 | Xt ライブラリ関数におけるテキスト入力イベントのフィルタリング |
5.1.4 | Xt ライブラリ関数におけるロケールのコードセット・コンポーネントの取り込み |
5.2 | OSF/Motif および DECwindows Motif ツールキットの国際化機能の使用 |
5.2.1 | Motif アプリケーションにおける言語の設定 |
5.2.2 | コンパウンド・ストリングと,XmText および XmTextField ウィジェットの使用 |
5.2.3 | ウィジェット・クラスの国際化機能 |
5.3 | X ライブラリの国際化機能の使用 |
5.3.1 | ロケールの管理 |
5.3.2 | さまざまなロケールでのテキストの表示 |
5.3.2.1 | フォントセットの作成と操作 |
5.3.2.2 | フォントセットのメトリックスの取得 |
5.3.2.3 | フォントセットを使用したテキストの表示 |
5.3.2.4 | X 出力サーバを使用したテキスト処理 |
5.3.2.5 | エンコーディングが異なるフォントセット間の変換 |
5.3.3 | クライアント間通信の処理 |
5.3.4 | 地域化されたリソース・データベースの処理 |
5.3.5 | X 入力サーバを使用したテキスト入力の処理 |
5.3.5.1 | 入力サーバへの接続と,接続の解除 |
5.3.5.2 | 入力サーバ値の問い合わせ |
5.3.5.3 | 入力サーバのコンテキストの作成と使用 |
5.3.5.4 | On-the-spot 入力スタイル用の前編集コールバックの作成 |
5.3.5.5 | 入力サーバのためのイベント・フィルタリング |
5.3.5.6 | キーボードからのコンパウンド・ストリングの取得 |
5.3.5.7 | 入力サーバが失敗したときの処理 |
5.3.6 | Xt および X ライブラリの国際化機能の使用法: 要約 |
6 | ロケールの作成 |
6.1 | ロケールに対応した文字マップ・ソース・ファイルの作成 |
6.2 | ロケール定義ソース・ファイルの作成 |
6.2.1 | LC_CTYPE ロケール・カテゴリの定義 |
6.2.2 | LC_COLLATE ロケール・カテゴリの定義 |
6.2.3 | LC_MESSAGES ロケール・カテゴリの定義 |
6.2.4 | LC_MONETARY ロケール・カテゴリの定義 |
6.2.5 | LC_NUMERIC ロケール・カテゴリの定義 |
6.2.6 | LC_TIME ロケール・カテゴリの定義 |
6.3 | マルチバイト・コードとワイド文字コード間の変換を行うライブラリの構築 |
6.3.1 | 必須メソッド |
6.3.1.1 | fgetws 関数用の _ _mbstopcs メソッドの作成 |
6.3.1.2 | getwc( ) 関数用の _ _mbtopc メソッドの作成 |
6.3.1.3 | fputws( ) 関数用の _ _pcstombs メソッドの作成 |
6.3.1.4 | _ _pctomb メソッドの作成 |
6.3.1.5 | mblen( ) 関数用のメソッドの作成 |
6.3.1.6 | mbstowcs( ) 関数用のメソッドの作成 |
6.3.1.7 | mbtowc( ) 関数用のメソッドの作成 |
6.3.1.8 | wcstombs( ) 関数用のメソッドの作成 |
6.3.1.9 | wctomb( ) 関数用のメソッドの作成 |
6.3.1.10 | wcswidth( ) 関数用のメソッドの作成 |
6.3.1.11 | wcwidth( ) 関数用のメソッドの作成 |
6.3.2 | オプションのメソッド |
6.3.3 | ロケールで使用するシェアード・ライブラリの作成 |
6.3.4 | ロケールに対応した methods ファイルの作成 |
6.4 | ロケールの作成とテスト |
7 | 国際化アプリケーションのプログラミング上の注意 |
7.1 | 入力システムの選択 |
7.2 | ユーザ定義文字と語句入力の管理 |
7.3 | ロケールの指定によるソート順序の割り当て |
7.4 | 英語以外の言語におけるリファレンス・ページの処理 |
7.4.1 | nroff コマンド |
7.4.2 | tbl コマンド |
7.4.3 | man コマンド |
7.5 | データ・ファイルのコードセットの変換 |
7.6 | 中国語および韓国語の PostScript サポートでのフォント・レンダラの使用 |
7.6.1 | マルチバイト PostScript フォント用のフォント・レンダラの使用法 |
7.6.1.1 | 2 バイト PostScript フォント用のフォント・レンダラのセットアップ |
7.6.1.2 | UDC フォント用のフォント・レンダラのセットアップ |
7.6.1.3 | TrueType フォント用のフォント・レンダラの使用 |
A | 国際化インタフェースの要約表 |
A.1 | ロケール宣言 |
A.2 | 文字分類 |
A.3 | 大文字/小文字変換と汎用プロパティ変換 |
A.4 | 文字照合 |
A.5 | 言語と文化習慣によって異なるデータへのアクセス |
A.6 | 日付/時刻の変換と書式付け |
A.7 | テキストの書き込みと読み取り |
A.8 | 数値変換 |
A.9 | マルチバイト文字とワイド文字の変換 |
A.10 | 入出力 |
A.11 | 文字列処理 |
A.12 | コードセット変換 |
B | ユーザ定義文字データベースのセットアップと使用法 |
B.1 | ユーザ定義文字の作成 |
B.1.1 | cedit のユーザ・インタフェース画面上での操作 |
B.1.2 | フォント・グリフの編集 |
B.2 | システム・ソフトウェアが使用する UDC サポート・ファイルの作成 |
B.3 | X11 や Motif アプリケーションで使用する UDC フォントの処理 |
B.3.1 | fontconverter のコマンド・オプションの使用法 |
B.3.2 | 出力ファイル・フォーマットの制御 |
C | プログラムでの DECterm ローカライゼーション機能の使用 |
C.1 | DECterm ウィンドウにおける罫線の処理 |
C.1.1 | パターンに従った罫線の描画 |
C.1.2 | パターンによる罫線の削除 |
C.1.3 | 領域内のすべての罫線の削除 |
C.1.4 | その他の DECterm エスケープ・シーケンス |
C.1.5 | DECterm が罫線をサポートしているかどうかの判定 |
C.2 | DECterm プログラミングにおける制約 |
C.2.1 | ダウンライン・ローダブル文字 |
C.2.2 | DRCS 文字 |
D | サンプル・ロケールのソース・ファイル |
D.1 | 文字マップ (charmap) のソース・ファイル |
D.2 | ロケール定義のソース・ファイル |
用語集 |
例 |
3-1 | メッセージ・テキスト・ソース・ファイル |
3-2 | 対話型操作によるメッセージ・カタログの生成 |
5-1 | X ウィンドウ・アプリケーションにおけるロケールの設定 |
5-2 | X ウィンドウ・アプリケーションにおけるフォントセットの作成と使用 |
5-3 | X ウィンドウ・アプリケーションにおけるテキストの表示 |
5-4 | X ウィンドウ・アプリケーションにおける他のクライアントとの通信 |
5-5 | X ウィンドウ・アプリケーションにおける入力サーバへの接続と接続の解除 |
5-6 | 入力サーバがサポートするユーザ入力スタイルの取得 |
5-7 | X ウィンドウ・アプリケーションにおける入力コンテキストの作成と破棄 |
5-8 | X ウィンドウ・アプリケーションにおける前編集コールバックの使用 |
5-9 | X ウィンドウ・アプリケーションにおける入力サーバのためのイベント・フィルタリング |
5-10 | X ウィンドウ・アプリケーションにおけるキーボード入力の取得 |
5-11 | 入力サーバが失敗したときの処理 |
6-1 | サンプル・ロケール用の charmap ファイル |
6-2 | マルチバイト・コードセット用の charmap ファイルの一部 |
6-3 | ロケール・ソース定義ファイルの構成 |
6-4 | LC_CTYPE カテゴリの定義 |
6-5 | LC_COLLATE カテゴリの定義 |
6-6 | LC_MESSAGES カテゴリの定義 |
6-7 | LC_MONETARY カテゴリの定義 |
6-8 | LC_NUMERIC カテゴリの定義 |
6-9 | LC_TIME カテゴリの定義 |
6-10 | ja_JP.sdeckanji ロケールのための _ _mbstopcs_sdeckanji メソッド |
6-11 | ja_JP.sdeckanji ロケールのための _ _mbtopc_sdeckanji メソッド |
6-12 | ja_JP.sdeckanji ロケールのための _ _pcstombs_sdeckanji メソッド |
6-13 | ja_JP.sdeckanji ロケールのための _ _pctomb_sdeckanji メソッド |
6-14 | ja_JP.sdeckanji ロケールのための _ _mblen_sdeckanji メソッド |
6-15 | ja_JP.sdeckanji ロケールのための _ _mbstowcs_sdeckanji メソッド |
6-16 | ja_JP.sdeckanji ロケールのための _ _mbtowc_sdeckanji メソッド |
6-17 | ja_JP.sdeckanji ロケールのための _ _wcstombs_sdeckanji メソッド |
6-18 | ja_JP.sdeckanji ロケールのための _ _wctomb_sdeckanji メソッド |
6-19 | ja_JP.sdeckanji ロケールのための _ _wcswidth_sdeckanji メソッド |
6-20 | ja_JP.sdeckanji ロケールのための _ _wcwidth_sdeckanji メソッド |
6-21 | ja_JP.sdeckanji ロケールで使用されるメソッドのライブラリの作成 |
6-22 | ja_JP.sdeckanji ロケールのための methods ファイル |
6-23 | fr_FR.ISO8859-1@example ロケールの作成 |
6-24 | LOCPATH 変数の設定とロケールのテスト |
7-1 | 省略時の cp_dirs ファイル |
図 |
3-1 | メッセージ・カタログを使用できるようにするための,既存のプログラムの変換 |
B-1 | ユーザ定義文字をサポートするコンポーネント |
B-2 | cedit のユーザ・インタフェース画面 |
B-3 | credit フォント編集画面 |
B-4 | フォント・サイズを変更するフォント編集画面の解釈 |
B-5 | cedit の編集機能を呼び出すためのキーマップ |
C-1 | DECDRLBR シーケンスを用いた罫線の描画 |
C-2 | DECDRLBR パラメータのビット・パターン |
表 |
3-1 | メッセージ・テキスト・ソース・ファイルにおける特殊文字の記述 |
4-1 | ワイド文字を追加し,カーソルを進める curses ルーチン |
4-2 | ワイド文字を挿入し,カーソルを進めない curses ルーチン |
4-3 | ワイド文字列を追加しカーソルを進めない curses ルーチン |
4-4 | ワイド文字列を追加しカーソルを進める curses ルーチン |
4-5 | ワイド文字列を挿入しカーソルを進めない curses ルーチン |
4-6 | ワイド文字列を削除する curses ルーチン |
4-7 | ウィンドウからワイド文字を読み取る curses ルーチン |
4-8 | ワイド文字列とその属性を読み取る curses ルーチン |
4-9 | 属性なしでワイド文字列を読み取る curses ルーチン |
4-10 | ワイド文字列を端末から読み取るcursesルーチン |
4-11 | ワイド文字列をキーボードから読み取る curses ルーチン |
4-12 | ウィンドウ内の書式付きテキストを変換する curses ルーチン |
4-13 | ウィンドウに書式付きテキストを表示する curses ルーチン |
5-1 | X ライブラリのロケール宣言関数 |
5-2 | フォントセットの作成と操作を行う X ライブラリ関数 |
5-3 | テキストのサイズを調節する X ライブラリ関数 |
5-4 | テキストを表示するための X ライブラリ関数 |
5-5 | 出力サーバと出力コンテキスト用の X ライブラリ関数 |
5-6 | クライアント間通信用の X ライブラリ関数 |
5-7 | 地域化されたリソース・データベースを扱う X ライブラリ関数 |
5-8 | 入力コンテキスト (XIC) を管理する X ライブラリ関数 |
7-1 | 英語でサポートされているコードセット変換 |
7-2 | UDC 文字用の XLFD 登録名 |
B-1 | UDC サポート・ファイルのオンデマンド・ローディングのための stty オプション |
B-2 | cedit コマンドのオプション |
B-3 | さまざまなフォント編集機能のためのキー |
B-4 | cedit モードを切り替えるためのキー |
B-5 | カーソル移動を制御するためのキー |
B-6 | ウィンドウ領域にカーソルを移動するためのキー |
B-7 | フォント・グリフを描画するためのキー |
B-8 | フォント・グリフを編集するためのキー |
B-9 | cgen コマンドのオプション |
B-10 | fontconverter コマンドのオプションと引数 |
C-1 | 罫線に対する標準エスケープ・シーケンスの効果 |
索引 |