在日日本人の日本滞在日記

How I live in Japan, out of my diary

Since 1st Oct., 1998
COUNTER

多言語ホームページによる情報発信の仕方

魚野剣太郎(Kentaro.Uono@nifty.com)
Copyright(C) 2001,2002,2003 by Kentaro Uono, all rights reserved.
2001/01/07 作成, 2002/12/01 改訂
2003/01/24 改訂, 2003/01/29 改訂
2003/08/21 改訂, 2005/7/30 改訂

以下の説明は、HTMLの概念を知っている人を前提に作成しています。つまり、テキストエディタを使用してHTMLタグをつけながらHTMLファイルを記述することができる人を対象に書いてあります。この説明が理解できない場合は、まずHTMLファイルとは何かを学習してください。

私たちの住む日本という社会は,20世紀末から今日にかけて,急速に国際化が進んでいます。街中で外国人を見かけることもあたりまえになりましたし,海外に住んで仕事をしている人を知人に持つ人も多くなってきていることでしょう。

WEBブラウザの多言語表示対応状況
ブラウザ バージョン 対応状況 備考
Netscape 4.0以降 v6.0よりXMLに対応
Mozilla 1.0以降
Internet Explore 6.0以降 XMLに対応
Lynx - × Unicode未対応

このような世の中の動きにつれて,ITの世界でもWWWのページ(いわゆるホームページ)を記述するルール,HTMLが進歩し,HTML 4.0,あるいはXHTML 1.0,といった新しいHTML規格では,一枚のページの中に様々な言語の文章を入れ込むことができるようになりました。この規格に対応したインターネットWEBブラウザ(例えばNetscapesafari,Mozilla,Internet Exploreなど)は,正しく書かれた多言語HTML文書であれば,きちんと多言語で表示できる機能を備えています*1

最近ではブラウザ側(WEBを見る側)の操作環境(Operating System)が充実し,例えばMac OS XやWindows 2000, Windows XPなどのシステムでは簡単に複数の言語の文章を表示・編集・印刷することができます。勿論,多言語で記述してあるWEBページも設定さえ済ませば基本環境のままで見ることができます。

しかし,このすばらしい多言語対応という機能はまだあまり世間に知られていないため,マルチリンガル(多言語)で書かれたホームページはほとんど見かけません。また,多言語対応にきちんと対応したHTMLエディタの数も少ないため,実現したくても実現できないという現状があります

そこで,私が個人的に行っている様々な実験を公開し,国際交流や知識の交流を盛んにしていく一助としたいと思います。

といってもたいした秘密などなく,以下のポイントを押さえれば簡単に誰でもマルチリンガル (多言語)のホームページを書くことができます:

  • HTML 4.0以降あるいはXHTML 1.0以降の書式を使ったHTML文書とする。特に,正しく文字コードと言語コードを指定する。
  • 保存・編集する際の文字コードとエンコーディングにUnicodeとUTF-8を指定する
  • 多言語対応のテキストエディタを使う
  • 日中韓などターゲットの言語の文字(グリフ)が組み込まれているフォントを指定して編集する

では次に,中国語と日本語の混在するページを例にして,具体的にどうすればいいのかを見ていきましょう。


*1 XMLという規格で書かれた多言語文書でも,対応したブラウザであればきちんと表示できます。

HTML 4.0以降あるいはXHTML 1.0以降の文書を書く

多言語化はHTML 4.0以降,あるいはXHTML 1.0以降の規格で定められています。それ以前のHTMLでは,ブラウザの実装状況に依存し,きちんと表示できません。

HTML4.0にのっとった文書の骨格は例えばは以下のとおりです:

  <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="ja">
<title>Multi-lingual test</title>
</head>
<body>
<h1>多言語のページのテスト</h1>
<p>これは日本語です。</p>
<p lang="zh">这是中文。</p>
<p>ここは日本語と<span lang="zh">汉语</span>の混在文です。</p>
</body>
</html>
多言語のページのテスト

これは日本語です。

这是中文。

ここは日本語と汉语の混在文です。

保存・編集する際の文字コードとエンコーディングにUnicodeとUTF-8を使う

多言語を実現するには,多言語を扱える公的な文字コード指定方法を採用する必要があります。多言語を扱える文字コード の指定方法としては,JISに定められている方法(エスケープシーケンスコードでの文字コード体系の切り替え)やUnicodeの方法 (多言語で扱う文字を全て一つの文字コード体系内に採用する),TRONコード(同左)などがあります。実際,多言語を含んだメールのやりとりで は,JISで定められているような方法でやりとりすることがこれまでは一般的でした。

しかしHTMLの世界では,Unicodeを採用してゆくことになっているので,ここではUnicodeを採用しましょう。

ただし,Unicodeは文字コードとして採用するのであって,エンコーディング方法としてはUTF-8というもの を採用します。このあたり,現行の市販エディタにも一部混乱が見られます。

UTF-8は,Unicodeのエンコーディングフォーマットのひとつです。文字コード・文字のエンコーディングにUnicodeとUTF-8を指定 することで,多言語の混在が可能となります。UnicodeやUFT-8についてはFAQもご参照ください。


日中韓などターゲットの言語の文字(グリフ)が組み込まれているフォントを指定して編集する

日本語・簡体字・繁体字のグリフを含んだフォント
フォント グリフ 提供 備考
Mac OS X
STSong 日・簡・繁 Apple社 OS X 10.2以降に標準添付
Windowz
Arial Unicode MS 日・簡・繁 Microsoft社 MS Office 2000/Word 2000などに添付

Mac OS など多言語対応機能を持ったOSは,様々な言語に対応したフォントを付属させています。例えば日本語を扱うときはOsaka(日本語のフォント),簡体字の文章を扱うときはBeijing(簡体字のフォント),繁体字の文章を扱うときはTaipei(繁体字のフォント)といった具合に,入力や編集,出力の際,これらを適宜切り替えています。

ところが,いろいろと問題があります。本来,Unicodeは日本語・中国語に限らず多数の言語の文字・字体に文字コードを割り当てておりますので,理想的にはUnicodeに対応したフォントがあればこれらの言語は全て表示・編集できるはずです。しかし実際には,日本で販売されているフォントは一つの言語だけに対応したフォントが多いのが現状でした。

また,Unicode対応とうたっているOSやエディターなどアプリケーションソフトも,内部の文字コードがUnicode対応でないものがあります。これらを使うと,日本語の漢字の字体が強制的に簡体字の字体に置き変わるなどの不具合が起こる可能性があります。

Unicode自体は言語の切り替え情報を持つ仕組みを備えていないので,UnicodeのプレーンテキストとしてエディターでHTML文書を作成する場合は,日本語・簡体字・繁体字の字形(グリフ)を全て持つフォントを使えば,単一のフォントで対応できます。例えばMac OS XではSTSongなどがこれにあたります。

編集の際に単一のフォントを指定したとしても,HTML文書のブラウザでの表示は,言語ごとに使用するフォントをスタイルシートなどで指定できます。このページは,その仕組みを利用しています。


ではパソコン上でUnicode,UTF-8を使うための環境について見ていきましょう。

UTF-8を使ってHTML文書を編集する~Macintosh篇

Mac OSで使えるテキストエディタ;◎:マルチリンガル対応,魚野推奨;○:他の言語対応対応;△:UTF-8は扱えるが,日本語のみ;×:UTF-8に対応していない
エディタ UTF-8対応 備考
Jedit X このページはこのエディタで作成しています。
Mozilla 1.21以降 Composerを使用
テキストエディット(TextEdit) ファイルを開ける際,リッチテキストコマンドの無視とUTF-8エンコーディングの明示的な指定をすること
Jedit 4.0 一文書内に多言語の混在は出来ない。
Jckecker 3 同上
マキエンタープライズのHTMLエディタ 未評価。
(番外)Adobe GoLive 6 プロ用のHTML構築環境ソフト。レイアウト画面では多言語を扱えるが,UTF-8のソースを扱えないなど様々な不具合が発生する。

まずMacintoshをとりあげます。いちばん安価に多言語ウェブページを作成できます。また,筆者の主環境がApple社のノートパソコンPowerBookとMac OS X10.4 Tiger だからでもあります。Apple社は,Mac OS に多言語対応機能を早期から搭載していました。ある時期,多言語といえばMac OSという時期もあったのです。現在Mac OSは,Mac OS X Tigerが最新の操作環境です。Mac OS Xは基本的に内部の文字コードにUnicodeを使用していますので,多言語の取り扱いについては基本的な条件を満たしています。

準備

Mac OS X で多言語を扱う準備は非常に簡単です。原則的に,表示は何もしなくても問題なく出来ます。入力についてですが,システムの環境設定から地域情報を開き,「入力環境」でお好きな言語を選択するだけです。これで対応ソフトがあれば,選択した言語の入力・編集が出来るようになります。Mac OS X10.2では,STSongという中国語用のフォントに,日本語の字体も含まれています。今後Mac OS X用に提供される簡体字中国語フォントには,日中台のグリフ(文字)が含まれるものが増えると思われます。

HTMLファイルの編集

Jedit X

Artman21が開発販売しているテキストエディタです。このページはJedit Xで作成しています。

TextEdit

Mac OS Xに標準搭載のテキストエディット(TextEdit)を使うことで,無料で多言語のHTMLファイルを編集することができます。ファイルを開ける際,UTF-8エンコーディングの明示的な指定とリッチテキストコマンドの無視を選択してください。実際,このページはこのソフトで編集しています。

Mozilla 1.21以降のComposer環境

現時点(2002.12.1)では一番お勧めの環境です。Mozilla 1.21以降に付属するComposerを使えば,多言語でのページの編集も問題なく行えます。ブラウザとセットになっていますから,表示してみた際の印象の確認が確実に行えます。ただし,iBook(Dulal USB)の環境では,動作がやや緩慢ですけれども。

Mozillaの入手先は本家(http://www.mozilla.org/)あるいは日本の有志のサイト(http://mozilla.gr.jp/)をご参照ください。

Muwse

従来から多言語対応ソフトをいろいろ扱っているマキエンタープライズが多言語対応HTMLエディタMuwseを出しています。タグの自動挿入や色付けをやってくれる他に,サーバーへのアップロード機能もあるとのこと。まだ未評価ですが,前述のMozillaが同じようなことをできる環境ですので,わざわざ有料(1万円以上します)のMuwseを使用する意味がはっきりと打ち出されない限りこのソフトの生き残りは難しいでしょう。

JEdit 4

Artman21(元まつもと開発部門)が開発販売しているエディタです。UTF-8での保存が行えます。旧 Mac OSの時代に使っていたので使用しているのですが,中国語の文字の部分を強制的に日本語の文字に置き換えられてしまいました。WorldTextというアプリケーションソフトではそのようなことは無いので,エディタのつくりの問題(内部の処理をUnicodeで行っていないため)だと思われます。artman21に問い合わせたところ,次期メジャーバージョンアップで内部コードのUnicode化対応予定とのことでしたが,現在販売中のJedit Xにてこの約束は果たされています。

まとめ

Mac OS Xは,前身のNextSTEPの時代から,先進的な多言語対応を進めてきました。Mac OS X用のCocoaアプリケーションは,多言語対応を謳っていなくても原則として多言語を扱えます。無償提供されているTextEditやMozillaがある今,Mac OS Xで多言語のHTML文書を作成することに何の問題もありません。今後は,更に高機能のエディタや編集ソフトの登場が望まれます。

Windows2000

Windows2000Proで使えるテキストエディタ;◎:マルチリンガル対応,魚野推奨;○:マルチリンガル対応;△:UTF-8は扱えるが,日本語のみ;×:UTF-8に対応していない
エディタ UTF-8対応 備考
EmEditor v3.13以降 多言語をまともに使える。作り手も多言語のHTMLファイルの編集を意識。中文版などあり
メモ帳 多言語をまともに使えるが,勝手に文頭にBOMをくっつけてくれるので,古いIE,NetscapeやMacintosh用IEできちんと文章が表示されないとんでもないエディタ。
秀丸 3.05 UTF-8を謳っているが,実は日本語以外の言語に対応できていない。また,BOMを扱えない
WZ v4.0 × UTF-8を使えない

Windows2000 Professionalで調べてみました。このOSも基本的には多言語対応(言語の切り替え機能を持っている)です。ポイントとしては前述のようにエディタが使うフォントにArial Unicode MSなどの多言語用フォントを指定をすればいいのですが,残念ながらWindows 2000 ProにはArial Unicode MSはついていません。MS Office 2000/Word 2000などに付属しています。

エディタについては今のところ,EmEditorで書いていくのが一番間違いのない方法のようです。私が使っているのは3.13版ですが,UTF-8とArial Unicode MSを使えば,ちゃんと多言語を同一のファイルで扱えるつくりになっています。

有名な市販・シェアウェア製品ではきちんと対応したといえるのは最新版などに限られる状況にあります。

残念ながらメモ帳は勝手に文書の最初にBOM(文字コード識別用にファイルの最初に置く幅のない空白を示すコード)がついてしまうので,問題が発生します。具体的には,Netscape, Macintosh用IEなどで文頭におかしな文字が表示されます(BOMを解釈できないらしい)。UTF-8対応を謳っておきながら,BOMを解釈できないブラウザでの文字化けが,メモ帳の問題(BOMを必ずつけるのがUTF-8の規格?)なのか,ブラウザの問題(BOMはUTF-8の規格の一部)なのか,現時点では魚野はまだ調べていませんが,いずれにしてもやっかいな問題です。

それに,フォントの指定も,日本語用のフォントではだめで,Arial Unicode MSといった,様々な言語用の字体を含んでいるフォントを使用しなければなりません(これがプロポーショナルフォントで,困ったものです)。メモ帳のフォント指定は,文書ごとではなく,前回指定したフォントが有効となるので,たまたま普通の文書を別のフォントで編集した後に多言語のファイルを開いてうっかり保存してしまうと,せっかく入力した日本語以外の部分が文字化けしてしまいます(これで何度も泣きました)。

一太郎Arkなんて変わり種も表にあげてあります。試したわけではないけれど,XHTML対応を謳っているので当然マルチリンガルに対応していると思います。

HTMLエディタと呼ばれる分野については筆者はFrontPage 2000とOffice 2000しか持っていないので,よくわかりません。あまりこういうどでかいソフトは使う気がしないので,気が向いたらいずれ評価してみます。

自分のほかにこういうことは調べないのかと思っていたら,こんなページがありました:Windows 98/2000上でのUTF-8のページの作り方。私のページよりはわかりやすいですね。

その他のWindows

その他のWindows,Windows95,98Windows Meではまだ内部の多言語・Unicode対応が進んでいないので,アプリケーション側で対応していないとまったく使えないでしょう。アプリケーション側で対応している例としてはMicro$oft社のFrongPage2000があります。

言語コードの指定

言語コード一覧表
言語 言語コード
日本語 ja
中国語 zh

Unicodeで記述したファイルは,言語コードを設定することで正しく指定・表示できます。

言語コードを右表に示します。簡体字と繁体字の区別がありませんが,Unicodeでは同じ漢字で簡体字と繁体字で字体が違うものは別コードが割り当てられており,特にこれ以上何も指定する必要がありません(逆に,スクリプト情報を指定できないので,データの再利用をするのに問題となります。これがUnicodeシステムが抱える大きな課題です)。

文書全体の言語の指定は,htmlタグの中で行います。上段の例は,XHTML 1での指定例です。一般的には,下段のHTML 4での指定が一般的でしょう(ホントは,ちゃんとした文書宣言をすることが望ましいです):

<html xmlns="http://www.w3c.org/1999/xhtml" xml:lang="ja" lang="ja" />
<html lang="ja" >

段落や,一文ごとに言語を指定することもできます:

<p lang="zh">你好,我叫鱼野。</p>
<p><span lang="zh">请座。请喝茶。</span> <span lang="ja">お座りください。どうぞお茶を。 </span></p>
你好,我叫鱼野。
请座。请喝茶。お座りください。どうぞお茶を。

注意点

Mac用IE5.1,5.2のバグについて

読者からの相談を調査した結果,Mac OS X, Mac OS 9に標準搭載されている日本語版のInternetExplorer 5.1, 5.2には多言語表示に関わるバグがあることがわかりました。具体的には表>table<を入子にすると,内側の中国語や韓国語の内容は,文字化けしたり表示位置がおかしくなります。回避方法は,表を多重にしないことです。2003.01.29追記

言語コードの指定誤りによる文字化け

<span lang="ja">还没有作好跟我好朋友的友谊修建好</span>
<span lang="zh">还没有作好跟我好朋友的友谊修建好。</span >

IE5.5だと上の行は日本語の漢字と字体が違っている部分で化けます(還,誼)。Netscape6では化けないのが不思議ですが。Mac OS X, IE5.1の組み合わせでは文字化けしません。タグの言語指定と,その言語にない文字の扱い,規定ではどうなっているんでしょうね。この問題は,ブラウザで言語ごとに指定されたフォントに,日本・大陸(簡体字)・台湾(繁体字)の漢字グリフが含まれているかいないかに依存します。

以上


声明~多言語ホームページによる情報発信に興味を抱いている方へ

多言語での情報発信をしているページ,あるいはそのノウハウを解説しているページをお互いにリンクしませんか?

現時点では,WEBリングという仕組みを使い,お互いのページをリンクすることが可能です。今のところ マルチリンガルという名前のWEBリングを確保してあります。多言語ページの作り方をお教えすることも可能です。 どなたか私以外にもう一人,ページをリンクしてくださる方が現れたら,WEBリングを開始したいと考えています。 もし興味があれば,リングマスタの魚野までご連絡ください。

マルチリンガルWEBリングについて

前のサイト ホームページ 次のサイト

このページは,「マルチリンガルWEBリング」のホームページです。マルチリンガルWEBリングでは、WEBページ(いわゆるホームページ)で多言語で情報を発信することに関する情報を提供するWEBページを輪(リング)のように相互リンクするものです。 WEBページを訪れた方々は、このリングの中をたどっていくことにより、「マルチリンガルWEB」という同じテーマをもったWEBページを効率よく次々と訪問することができます。

この「マルチリンガルWEBリング」に参加している各WEBページには、次のようなナビゲーション・バーが置いてあり、ウェブリングというサービスを利用して相互リンクしています。

このMuliti-lingual WEB の所有者は 魚野剣太郎です。


[2つ前へ] [前へ] [次へ] [2つ次へ] [Random] [次の5サイト] [サイトリスト]

このナビゲーション・バーには「リングに参加しているWEBページの一覧」、「次(前)のWEBページ」、「次(前)の5サイトを一覧」など便利な機能が入っています。各WEBページの製作者は、リンクされている他のWEBページを管理する必要はありません。このナビゲーション・バーが(ウェブリング・サービス)を利用して、自動的に案内してくれます。

さて、マルチリンガル(多言語)で情報を提供している皆さん,マルチリンガル(多言語)で情報を発信することに関する情報を提供するWEBページを運営されている皆さん!この「マルチリンガルWEBリング」に参加しませんか?

皆さんが参加することでこの輪(リング)が大きくなっていきます。リングが大きくなればなるほど、このリングをたどる多くの人に皆さんのWEBページを知ってもらう事ができます。(アクセス数が増える!)もちろん参加は無料です。

皆さんの参加をお待ちしております。

リングマスター うおの


改訂履歴

2001年1月7日 新規作成
2002年12月1日 体裁改訂
2003年1月24日 Mac用作成環境に関する記述の追加
2003年1月29日 Mac用IEのバグに関する記述の追加
2003年8月21日 ウェブリング用バッジの作成と追加
2005年7月30日 Mac用作成環境に関する記述の改訂

Original:1-OCT-1998;Copyright(C)1998--2005 by Kentaro Uono;All rights reserved.
Mac and the Mac logo are trademarks of Apple Computer, Inc., registered in the U.S. and other countries. The Made on a Mac Badge is a trademark of Apple Computer, Inc., used with permission.

This site is made on a Mac