[an error occurred while processing this directive]
Contents
Sambaとは?
Samba日本語版
ドキュメント
技術情報
紹介&リンク
Community
プロジェクト
メーリングリスト
イベント
ユーザー会
etc...
お問合せ
ご支援・ご協力
日本 Samba ユーザ会 (Samba Users Group Japan)

SWATのメッセージ国際化リリースノート

JAPANESEENGLISH

SWATのメッセージ国際化リリースノート

2000年10月6日
河原 亮

目次

言語の追加方法について

Samba日本語版のSWATには国際化対応機能が付加されており、以下のように言語データを用意することで、同梱されている英語と日本語以外の言語にも対応することが可能になっています。本機能の技術的な解説については、Samba 日本語版テクニカルノートを参照してください。本ページでは言語の追加方法について説明します。なお、以下のドキュメントで相対指定されたパスは、Sambaのアーカイブを展開した時のトップディレクトリからのパスを表します。

Samba ドキュメントファイルの翻訳物の追加

言語情報の調査

設定を行う前に、あなたの言語を表す文字列はブラウザのAccept-Languageへッダの中でどのように表現されているかを調査する必要があります。例えば、日本語の場合、通常はjaが利用されていますが、古いMicrosoft Internet Explorer 3.xではjpが送出されます。このように複数の表記が混在している言語が他にもあるかも知れません。一般的にはISO 639で決められている言語コードが使われるようです。この文字列を、この文書中では以後"ブラウザの言語"と表記します。

Samba ドキュメントファイルの翻訳物の追加

Sambaのdocs/htmldocs以下にあるHTMLファイルとswat/help以下にあるHTMLファイル(現在はwelcome.htmlのみ)を翻訳したものを、各々アーカイブのdocs/{ブラウザの言語}/htmldocs以下とswat/{ブラウザの言語}/help以下におきます。

なお、あるファイルが要求された時に翻訳されたファイルが存在しなかった場合、自動的にデフォルトのブラウザ言語(現在はenに固定)のファイルがロードされます。従って全てのファイルの翻訳が行われていない場合でも、とりあえず翻訳したファイルについてこの機能を活用することが可能です。また、welcome.html中にリンクを追加するなどして、特定の言語環境用にファイルを追加することも可能になっています。SWATはミニWebサーバとして機能しますので独自のWebページを記述することで柔軟な拡張が可能です。例えば日本語環境では日本語特有の注意点を記したファイルなどを追加しています。

インストールスクリプトへの追加

source/script/installswat.sh中のlangs=で始まる行に、今回追加したブラウザの言語名を追加します。これにより追加したドキュメントは自動的にインストールされるようになります。

メッセージカタログの追加

SWATの入力フォームなどに使われるメッセージの言語を追加するにはメッセージカタログファイル(.poファイル)を追加する必要があります。

GNU gettextパッケージのインストール

メッセージカタログの編集と変換に必要なツールをインストールします。gettextにはいくつかの実装がありますが、現在はGNU gettextのみをサポートしています。(このツールは新しい言語のメッセージカタログを追加する場合にのみ必要になります。通常のユーザは必要ありません。)インストール法については附属のドキュメントを御参照下さい。

メッセージカタログファイルの追加

source/po/i18n_swat.potを元にして、source/po/{ブラウザの言語}.poファイルを作成してください。そしてテキストエディタで編集して下さい。編集にはgettextパッケージに含まれるEmacsのPO modeを利用するのが便利でしょう。ファイルの先頭のエントリを除いて、msgidの文字列を翻訳してmsgstrに書きます。なおメッセージカタログファイルの先頭のフォーマットは、以下のようになっています。

source/po/i18n_swat.pot:先頭
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR , YEAR. <-- 適宜設定
#
msgid ""
msgstr ""
"Project-Id-Version: i18n_swat \n"
"POT-Creation-Date: 2000-03-30 15:09+0900\n"
"PO-Revision-Date: 2000-02-08 12:48+09:00\n"
"Last-Translator: Ryo Kawahara \n" <-- 適宜設定
"Language-Team: (sample) \n" <-- 適宜設定
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset={メッセージ文字列の文字コード名(Shift_JIS等)}\n"
"Content-Transfer-Encoding: \n"

ここで、(特に日本語の場合)このファイルの文字コードはsambaでサポートされるコードページの文字コードと同じにします(つまり、日本語の場合Shift_JISにする)。これはファイル名、パラメータの値などがDOSコードページで出力されるからです。

アーカイブへの追加

source/configure.in中の1947行め付近にあるALL_LINGUAS変数にブラウザの言語名を追加してください。これでインストール時に適切に処理される他、後に述べる.gmoファイルへの変換を自動的に行なうようになります。

source/configure.in:1947 行め
# gettext support.
# (added by rkawa)
PACKAGE=i18n_swat
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
AC_SUBST(PACKAGE)
ALL_LINGUAS="en ja {あなたのブラウザ言語名}"
AM_GNU_GETTEXT

さらに、sourceディレクトリでautoconfコマンドを実行し修正を有効にします。これで準備が整いました。最後にsourceディレクトリでmakeして編集した.poファイルを.gmoファイルに変換します。

% cd source/
% autoconf
% make

このファイルはsource/po/{ブラウザ言語}.gmoに生成されプログラムの実行時に使用されるメッセージカタログのバイナリデータになります。アーカイブを再配布する場合この.gmoファイルを付属するようにして下さい。インストールは通常のmake installによって行なわれます。



Copyright © 1999-2019 日本 Samba ユーザー会 (Samba-JP)
2011-12-19 01:17:51 JST 更新