| タイトルおよびコピーライト情報 |
| まえがき |
| 対象読者 |
| 新規機能と変更事項 |
| 本書の構成 |
| 関連ドキュメントおよび標準 |
| 表記法 |
| 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 | 罫線に対する標準エスケープ・シーケンスの効果 |
| 索引 |