Widelandsは、1つの小さな開拓地のリーダーとしてプレイを開始する戦略ゲームである。プレイヤーは、開拓地を、たった1つの建物から商業帝国へと発展させてゆく。色々な意味でWidelandsは1993年に初登場したゲームシリーズThe Settlersに似ている。The Settlersの最新版が英語バージョンでしかプレイできないのに対して、Widelandsは多くの言語でプレイすることができる。例えば、フランス語、スペイン語のような、国際間で広く用いられる言語。ブルガリア語、フィンランド語のような、ある国家で公式に定められた言語。そしてカタロニア語、ガリシア語、エスペラント語のような少数の人々しか話さない言語にも対応している。Widelandsのようなフリーでオープンソースなソフトウェアの制作現場では、ボランティアの協力者(翻訳者を含め)を積極的に受け入れており、プレイできる言語の種類を増やしている。
2016年からWidelandsの開発チームを統括しているのはGunChleoc氏。彼女はスコットランド・ゲール語の翻訳者として2013年にプロジェクトに加わった。GunChleoc(ハンドルネーム)氏は、このフリーソフト開発チームで長期にわたり高評価を得ているメンバーで、多くのプロジェクトの翻訳に貢献し、より規模の大きい翻訳企画でもリーダー役を務めてきた。
スコットランド・ゲール語(アイルランド・ゲール語の表記Gaeilgeと区別し、Gàidhligと表記する)はスコットランド固有のケルト語である。
この言語はスコットランドで約5万8000人の人々が話す言葉であり、カナダでは7000人超の人々が使用している。スコットランド・ゲール語は、英語に押され、何世紀もの間に一地域のコミュニティ言語に衰退してしまったが、精力的な復興活動が現在進行中である。2016年の国勢調査によると、家庭での一次言語としてスコットランド・ゲール語を話しているのは公立学校に通う生徒522人のみであったが、最近では、スコットランド・ゲール語による教育が増加傾向にある。
スコットランド・ゲール語(以下、ゲール語)で利用できる市販のソフトウェアはほとんど例がない一方、現在利用可能な素晴らしいフリーソフトウェア集がある。内容はゲームやオフィスソフト、モバイルアプリ等。驚くべきことに、このゲール語のソフトウェアの財産は、主にたった2人のボランティアの尽力により作り出されている。このボランティアはGunChleoc氏、そしてマイケル・バウアー氏(グラスゴーを拠点とする言語コンサルタント兼出版者)である。最近になり、著者は、ゲール語のコンピューティングを可能にし、促進しているGunChleoc氏の体験を聞く機会に恵まれた。
少数言語でプレイするゲーム
Widelandsは、2001年に初めてインターネット上で公開され、以降、開発が続けられている。長寿の主な要因は(とても楽しいということは別として)おそらく、それがフリーでオープンソースなソフトウェアのプロジェクトであるということだ。プロジェクトはもっぱら開発者やアーティスト、作家たちのボランティアコミュニティによって支えられている。ライセンスで保護されたソフトウェアが、通常、商用プロジェクトとして開発されるのとは対照的に、フリーソフトウェアはユーザー誰もが改良を加え寄与することができる。
ゲームソフトでは、このような改良によって、ゲーム中に新しい仕組みや階層が作られたり、アートワークが新しく加わったり、磨きがかかったり、また異なるプラットフォーム(Windows、OS X、Android等)上で動作するバージョンが作られたりする。Widelandsの場合、こうした改良に加え、世界規模のグループがこのゲームを60の言語に完訳または部分訳してきた。そのひとつにゲール語もある。(以下のゲール語版によるゲームのトレーラーを見て欲しい)。
少数話者の言語をデジタルの世界で使用することが、その言語話者の社会に活力を与えるという確かな事例がある。今は商業的成功につながってはいないが、道徳的、社会的、文化的な力になっている。GunChleoc氏は、ゲール語はデジタルの世界で存在する価値があると長い間信じており、ソフトウェアをゲール語で利用できるよう、ほとんどボランティアで膨大な活動に全力を注いできた。それは文字通り長年にわたる作業であった。目を見張るのは、彼女がゲール語を母語としない、一学習者であるということだ。母語を別にもっていることで、彼女にはこの言語を理解するのに役立つ背景が加わっている。
「私が初めてゲール語に出会ったのはロックバンドのランリグを聞いた時でした。ゲール語の響きが好きでしたので、最初に発音の学習を始めました。」と彼女は語る。「そして文法と単語を少し勉強し、スコットランドを訪問しました……少々中毒気味でしたね。」
言語学者、コンピューター科学者としての教育を受け、翻訳者として生計を立てている彼女は、ゲール語学習者のためにFòram na Gàidhlig(ゲール語フォーラム)というサイトも運営している。
「ゲール語フォーラムを立ち上げたとき、掲示板ソフトのユーザーインターフェースをゲール語にすることは、自分自身にとって良い学習ツールとなるかもしれないと思いました。」彼女は説明する。「他にやる人がいなかったので、私はコミュニティの力を借りて、それを(おそらくかなりひどい)ゲール語に翻訳する作業を行いました。」
間もなくして、彼女はバウアー氏と共同でローカライズ作業に取り掛かった。「Akerbeltz(バウアー)氏はMozilla Firefoxの翻訳をちょうど終えたところだったので、私たちはチームを組んで意気投合しました。私の語学力が十分になってから、私たちはゲール語のローカライズ作業を共同で行ってきました。」
GunChleoc氏はゲームに焦点をあててローカライズに取り組んでいたので、著者は彼女を熱烈なゲーマーと推察していた。意外にも、それは間違いであった。「私はローカライズの対象としているゲームをプレイすることはありません。それらがうまくいっているかテストするだけです。」
今では、Scrabble(バウアー氏による翻訳)のような言葉のゲーム、0 A.D.やMegaglestのようなリアルタイム戦略ゲーム、レミングスに似た、Pingusと呼ばれるゲーム。SuperTuxKartと呼ばれるマリオカートのコピーまがいのゲームまでそろっている。GunChleoc氏は、意識して多数のジャンルのゲームを翻訳してきた。「私のやろうとしていることは、英語の話者が入手できる全種類のデジタルコンテンツを、全てのジャンルにつき、せめて一種類づつでもゲール語版で網羅することです。それが私の長期的な目標です。」
少数言語によるローカライズ
ソフトウェアのインターフェース部分(プログラムのうちユーザーとやり取りする部分)の翻訳は、相互に関連する2つの技術的なプロセスに依存している。第1のプロセス、インターナショナライゼーション(しばしばi18nと略される。以下、国際化)は、ソフトウェアを、様々な言語や地域で確実に効率よく効果的に使用できるように設計する作業である。第2のプロセス、ローカライズ(l10nと略される)は、ソフトウェアのごく一部でユーザーが接する部分であるインターフェースを、新しい言語へ実際に翻訳する作業である。ソフトウェアインターフェースは、最初に英語のような国際語で開発され、その後、他の言語へとローカライズされてゆく。
ソフトウェアのローカライズ作業は、どのような翻訳作業でも同様であるが、通常、高度な熟練を必要とする試みである。ローカライズ担当者は、コードやソフトウェアプロジェクト管理を熟知しているのと同様に、原文と翻訳対象となる言語にも精通している。独占所有権のあるプロジェクトの中でのローカライズ作業では、通常、熟練した労働に相当する賃金が支払われる。フリーソフトウェアのプロジェクトは、クラウドソーシングとボランティアの管理者に依存していると思われる。
ゲール語のような言語は、ほとんどの商品にとって興味深い市場とはなり得ない。ゲール語を話すほとんどの潜在的な顧客が英語も話せるということは、ソフトウェアメーカーなら容易に想像できる。そのため、ゲール語のローカライズに投資しても、経済的な見返りはないとみなされている。Microsoft Officeのローカライズ版が市販されているものの、こうした商用目的のゲール語版ソフトウェアはまれである。
フリーソフトウェアも、そうでないものも、ソフトウェアの大部分はテクノロジー業界の共通語である英語で開発されている。英語と異なる言語であるほど、ソフトウェアをその言語に翻訳しようとした時、よりいっそう問題の種類が増えることがある。問題が発生する要因は、開発者の多くが国際化と言語というものに関してそれほど理解していないということ、また、あるプログラミング方法が、いくつかの主要言語には有効でも、他の言語には有効でない場合があるということである。
ユーザーが画面上で目にする文字(メニュー、ボタン、エラーメッセージ、その他)は、ソースコードの中では英数字を保持するための「文字列型の変数」として表現される。(訳注:日本語では、仮名、漢字も対象となる)文字列型の変数は、フェイスブックのようなソーシャルメディアプラットフォームで、ユーザー名等を格納するためによく使用される。この変数は、ユーザーとのやり取りを、その人に合わせて最適化する際、画面上に現れるテキストを作成するために使用されることもある。
例えば、人物の名前(Jane『ジェーン』)は1つの文字列変数($username)に保存され、他の文字列(例えば$messageに保存されている「likes your post『さんがあなたの記事をいいねしました』」)と組み合わさると、テンプレート内で完成したメッセージになる。コーディングは「display $username + $message」というふうになる。
これにより「Jane likes your post『ジェーンさんがあなたの記事をいいねしました』」と表示される。この文字列をローカライズ、つまり翻訳することで、ユーザーに他の言語で代替のメッセージを提供することができる。ポルトガル語では「Jane gosta de sua postagem」と表示され、ドイツ語ユーザーには「Jane mag deinen Beitrag」と表示できるだろう。
問題は、この「ハードコードされた」構造が、他の多くの言語と互換性がないということである。GunChleoc氏によれば、この文例のゲール語訳は「正しくは『’S toigh le Jane am post agad』になるんです。つまり、どうやっても『Jane』で始まる文章にできないんですよ。」
英語を話すソフトウェア開発者が一般的であることを考えると、インターフェースの翻訳はしばしば二の次とされてしまう。その理由は一つには、課題がいくつか存在するからだ。第1に、開発者の多くが国際化と言語というものに関してそれほど理解していないということ、また、あるプログラミング方法が、いくつかの主要言語には有効でも、他の言語には有効でない場合があるということである。
第2に、おそらく更なる課題として、国際化では、複数形の規則とインターフェースの設計への配慮が要求されることが挙げられる。英語では、ほとんどの名詞が数字と共に「s」を加えて1回変化するだけである。例えば、記事1本は1 post、2本、23本や4000本は2、23、4,000 postsとなるように。
しかしゲール語や他の多くの言語では、ルールはもっと複雑となる。「ネコを数えてみましょう」GunChleoc氏は数え始める。「1 chat(ネコ1ぴき)、2 chat(2ひき)、3 cait(3びき)……10 cait(10ぴき)、11 chat(11ぴき)、12 chat(12ひき)、13 cait(13びき)……20 cat(20ぴき)、21 cat(21ぴき)……」というふうに。「スラブ語系言語にローカライズする同僚たちも、よく頭を抱えています。」ユーザーインターフェースに「友だち×名」「ポイント×点」「未読メール×通」といった表現の必要がある場合、様々な言語の複数形の規則により、複雑さが増す可能性がある。
さらに、英語の表現「OK」は ポップアップ画面におなじみのボタンによく合うが、ゲール語で「OK」を意味する「Ceart ma-tha」は語数が多く、なじまないかもしれない。下のスクリーンショットはGunChleoc氏がWidelandsのローカライズで直面している課題を示している。左の画面はゲーム内の一画面の修正前バージョンであり、右の画面はインターフェースの問題点をほぼ修正した新しいバージョンである。
この例が示すローカライズの課題は、(画面上側に並んでいる)ボタンの文字列を除去すること、(中央のアイテム一覧ウインドウで)一部まだ翻訳漏れの文字列があること、および誤った複数形「画面下に『22 puingean(ポイント)』ってありますが、正しくは『22 puing』なんです。」残る問題は(いずれは修正される予定だが)フォントレンダリング機能が悪さをして、語句に「�」がついていること(これは恐らく、アクセント記号付きの文字を含む言語で作業したことのある人なら誰でも経験していることであるが)。
このような問題は、もしソフトウェアー開発者が、gettextのような標準的な国際化のフレームワークに精通して(そして使用して)いれば、ほぼ「解決」される。この言語上の違いをよりわかりやすくするような技術的な仕組みをもたらすのが、そうした国際化フレームワークである。しかしながら、国際化、さらに広く見れば言語テクノロジーをコンピューター科学の教育課程で扱うことはめったにないと、GunChleoc氏は指摘する。
「自己流の翻訳システムがプログラムされているのに出くわすと、思わず叫びたくなるだけですが、プログラムした人は他に良い方法を知らないだけなのです。幸い、もっと古くから続くFLOSS(フリーソフト・オープンソースソフト)プロジェクトの多くは、すでにgettextやQTを使うように変わってきています。その場合、私のやるべきことは、文字列に発生した、調整を必要とするバグの報告だけになります。」
「多くのプロジェクトが非常に歓迎される一方で、ごくたまに、おかしな反応を受けることがあります。『死語になってる言語を翻訳するなんて時間のムダじゃないか、なんでそんなもの支援しなきゃならないんだ? 翻訳が完成するはずはないし、どうせそのうち更新が途切れて放置されるんだろうさ』と。」こういう場合の適切な対処法は、とにかく耐えること、とGunChleoc氏は言う。「たいていの場合、そのような事を言う人々は、単に無知で、何の意図もないのです。」ひとたび信頼と理解が得られれば、こうした尽力も評価されることになるのである。
「そして、地道に続けていけばいつか、卓越したローカライズの技能が彼らを感動させることでしょう。」
ローカライズ作業の終わりには1つの課題が待ち受けている。ユーザーに対して、ローカライズが完了したソフトの利用をいかに促すかだ。ローカライズの試みの多くが、情報格差の克服と、これまで英語が壁となりITと隔たっていた人々でも、その技術を使えるようにすることに重点を置くのに対し、ゲール語版ソフトの想定する利用者層は、英語に全く不自由していないのである。これらのユーザーがゲール語のテクノロジーを使い始めるには、まずその存在を知り、それを使うことによる損失より利益のほうが大きいと感じなければならない。「自分のコンピューターに何かをインストールすることに不安を感じる人は多いので、それを念頭に置いておく必要があります。」GunChleoc氏は指摘する。「翻訳版を喜んですぐに受け入れる人もいれば、一切を拒む人もいます。」
「今、私たちが本当に求めるのは、国内各地を巡ってくれるネイティブスピーカーです。」彼女は提案する。「あらゆるOS機を1台ずつポケットに携え、ゲール語ソフトを知らない人々にデモプレイを披露して回るのです。」