トップページ  Index  Search  Changes  Login

翻訳入門

これは 本家Wiki:Translating introduction の訳です。本家ウェブサイトの翻訳に関しては翻訳を参照してください。

この文書はまだ完成していません。 変更:2008年10月26日 (日) 20:29版に合わせる

ReactOS チームは翻訳で貢献してくださる方を歓迎します。この文書は、翻訳作業を開始するのを手助けするために書かれています。

この記事に書かれていないことで分からないことがあれば、何なりと翻訳メーリングリスト (ros-translate) にご質問ください。ReactOS IRC チャンネルでも質問できます。

初めに

まず初めに、あなたの言語への翻訳作業を行っている人がいるかどうかを確認してください。言語とその翻訳者の一覧は List of Translators ページで確認できます。さらに、IRC でその翻訳者と連絡を取ってみることもできます。もし既に翻訳者が挙げられていたら、その人たちに連絡を取り、翻訳に興味を持っていることを伝えてください。現在の翻訳の進行状況も聞けるでしょう。

もしあなたの言語がリストに含まれていなかったら、遠慮なく List of Translators のページに追加してください。e-メールアドレスとあなたの名前をリストに追加してください。

翻訳の仕方

ReactOS の翻訳は、それぞれのリソースファイル (*.rc) を編集することで行います。それぞれパスが異なるため、これらのファイルの場所を突き止めるのに苦労される方がいらっしゃいます。 重要: 翻訳しようとしている言語のファイルが存在しない場合は、"#include" 命令も編集する必要があります!

Wineの翻訳

Wine 由来のファイルについては Wine 本家のほうで翻訳をすべきです。そうすれば ReactOS にそれらを import したときに自動的に翻訳がすすむことになります。

Wine 関連ファイルの一覧は http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?view=markup にあります。

Wine に翻訳を送る方法は here http://www.winehq.com/site/sending_patches に記述されています。

ReactOSの翻訳

以下の参考一覧は ReactOS のソースに対して "en.rc" で検索を掛けたものの結果です。翻訳を必要とするファイル全てが反映されてい無い可能性があります。

未翻訳の En.rc ファイル - Main Tree より検索

 \base\applications\cacls\
 \base\applications\calc\
 \base\applications\charmap\
 \base\applications\cmdutils\find\
 \base\applications\cmdutils\more\
 \base\applications\cmdutils\xcopy\
 \base\applications\dxdiag\
 \base\applications\games\solitaire\
 \base\applications\games\winemine\
 \base\applications\kbswitch\
 \base\applications\logoff\
 \base\applications\mmc\
 \base\applications\msconfig\
 \base\applications\mscutils\devmgmt\
 \base\applications\mscutils\eventvwr\
 \base\applications\mscutils\servman\
 \base\applications\mstsc\
 \base\applications\network\ipconfig\
 \base\applications\notepad\
 \base\applications\regedit\
 \base\applications\regedit\clb\
 \base\applications\screensavers\3dtext\
 \base\applications\screensavers\logon\
 \base\applications\shutdown\
 \base\applications\sndvol32\
 \base\applications\taskmgr\
 \base\applications\winhelp\
 \base\applications\wordpad\
 \base\setup\reactos\
 \base\setup\usetup\
 \base\setup\vmwinst\
 \base\setup\welcome\
 \base\shell\cmd\
 \base\shell\explorer\
 \base\shell\explorer-new\
 \base\system\expand\
 \base\system\format\
 \base\system\regsvr32\
 \base\system\rundll32\
 \base\system\userinit\
 \base\system\winlogon\
 \boot\freeldr\fdebug\
 \dll\cpl\access\
 \dll\cpl\appwiz\
 \dll\cpl\console\
 \dll\cpl\desk\
 \dll\cpl\hdwwiz\
 \dll\cpl\input\
 \dll\cpl\intl\
 \dll\cpl\joy\
 \dll\cpl\liccpa\
 \dll\cpl\main\
 \dll\cpl\mmsys\
 \dll\cpl\ncpa\
 \dll\cpl\powercfg\
 \dll\cpl\sysdm\
 \dll\cpl\telephon\
 \dll\cpl\timedate\
 \dll\cpl\usrmgr\
 \dll\win32\aclui\
 \dll\win32\avifil32\
 \dll\win32\comctl32\
 \dll\win32\comdlg32\
 \dll\win32\crypt32\
 \dll\win32\devmgr\
 \dll\win32\hhctrl.ocx\
 \dll\win32\modemui\
 \dll\win32\mpr\
 \dll\win32\msacm\
 \dll\win32\msgina\
 \dll\win32\msi\
 \dll\win32\msvfw32\
 \dll\win32\netid\
 \dll\win32\netshell\
 \dll\win32\newdev\
 \dll\win32\oleaut32\
 \dll\win32\oledlg\
 \dll\win32\rasapi32\
 \dll\win32\rasdlg\
 \dll\win32\serialui\
 \dll\win32\setupapi\
 \dll\win32\shdocvw\
 \dll\win32\shell32\
 \dll\win32\shimgvw
 \dll\win32\shlwapi\
 \dll\win32\syssetup\
 \dll\win32\tapiui\
 \dll\win32\user32\
 \dll\win32\userenv\
 \dll\win32\wininet\
 \dll\win32\winmm\
 \dll\win32\wldap32\
 \dll\shellext\deskadp\
 \dll\shellext\deskmon\
 \dll\shellext\slayer\
 \subsystems\ntvdm\
 \subsystems\win32\csrss\win32csr\

ファイルをダウンロードする場所

最新のファイルは Subversion リポジトリで利用できます。既に古くなっている過去のリリースからではなく、Subversion リポジトリからダウンロードすることに注意してください。ViewCVSを使って、SVN のブラウズとファイルをひとつづつダウンロードすることができます。

ファイルの翻訳の方法

下にあるのが rc ファイルの例で、これは ReactOS Access Control List Editor (aclui) のものです。

(注意:このページでの見栄えを考えて、翻訳の観点からはさほど重要ではない部分を省略してある行があります)

 #include <reactos/resource.h>
 #include <defines.h>
 #include "resource.h"
 
 LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL
 
 IDD_SECPAGE DIALOGEX 0, 0, 227, 215
 STYLE WS_CHILD | WS_VISIBLE | WS_CAPTION
 CAPTION "Security"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
   LTEXT "&Group or user names:", -1, 7, 7, 105, 8
   CONTROL "", IDC_ACELIST, "SysListView32", LVS_REPORT
   PUSHBUTTON "A&dd...", IDC_ACELIST_ADD, 116, 87, 50, 14
   PUSHBUTTON "&Remove", IDC_ACELIST_REMOVE, 170, 87, 50, 14
   LTEXT "Allow", -1, 135, 107, 32, 8, SS_CENTER
   LTEXT "Deny", -1, 176, 107, 32, 8, SS_CENTER
 END
 
 STRINGTABLE DISCARDABLE
 {
   IDS_PSP_TITLE "Permissions for %1"
 }

まず最初にすることは、英語版の rc ファイル (普通は En.rc) のコピーを作り、(訳注:日本語なら Ja.rc) あなたの言語の名前をつけることです。(訳注:日本語以外に訳す場合で)言語コードがわからないときは、ISO-639 の最後の 2 文字のコード表を参照してください(ロケール名の一覧は こちらの MSDN のページ でもご覧になれます)。ただし、Wine 由来のファイルなどでは、ここと違うコードが使われいることに注意してください。また、新しく翻訳を始めるときには、既に自分の言語の翻訳ファイルが存在していないことを確認してください。

ファイルをコピーしたら、実際に翻訳を始めましょう。

  • 最初に変更 - LANG_ENGLISH

最初に変更すると良いのは LANG_ENGLISH で、自分の訳したい言語に変更します(例: LANG_SWEDISH)。(訳注:日本語であれば LANG_JAPANESE にします)言語と地域によっては、Sublang を SUBLANG_NEUTRAL か SUBLANG_DEFAULT から変更する必要があります。(訳注:日本語であれば変更は必要ないと思います)

以上を踏まえれば、翻訳はかなり簡単です。翻訳すべき言葉はクォーテーションマーク (訳注:「"」のこと)に挟まれています。しかし、クォーテーションマークの言葉全てを翻訳すべきではありません。例外があります。しかし、ファイル中の翻訳すべき言葉とそうでない単語を見分けるのは非常に簡単です。例えば、"MS Shell Dlg" (これはフォント名で行の初めにあります) や "SysListView32" が翻訳すべきでない単語の例です。

リソースファイルは「プレインテキスト」として保存してください。"unicode" や "UTF-8" あるいはもっとべつのもの (訳注: 日本語だと "EUC-JP" や "sjis" などが該当するか) として保存してはいけません。

フィールドやラベルなどがあなたの言語にとって小さすぎる場合があれば、それをリサイズして構いません。

特殊文字

文字 解説
& 上の単語内に含まれている & 記号に注意してください。& の次の文字がホットキーとして定義されます。ホットキーとは異なるメニューなどにすばやくアクセスするためのキーで、下線によって示されます。
% % 記号には上記の .rc ファイルにある %1 のように、別の文字が続きます。これは通常、文字列や値が表示される部分ですから、変更してはいけません。
\n これは改行です。
/* text */ これはコメント文です。後の作業の手助けとするために、ソース言語の文章を残しておくことができます。

翻訳したものをサブミットする

作成中...

用語

全てを Windows に忠実に訳す必要はありません。もし Windows よりも良い翻訳ができると思ったなら、変えちゃえ ! ただし、Windows のメニューのような一般に浸透した用語はそのままにしておくことが推奨されます。

また、訳語に一貫性を持たせるようにしてください。つまり、違う場面に出てくる同じ単語を、違ったふうに訳さないでください。

アドバイスなど

絶対に従わなくてはならない指針はありませんが、推奨されることがいくつかあります。

校正

翻訳チームの別のメンバーに、翻訳したもの全てを校正してもらい、意見をもらうことで翻訳は質の高いものになるでしょう。このアイデアはスウェーデン語の翻訳チームによって始められました。そこでは校正がどのように行われているかを示します。

  1. 誰かがファイルを訳したら、私たちの場合には ftp サーバを用意し、そこにアップロードします。
  2. 別のメンバーが校正し、コメントをします。
  3. 元の翻訳者も意見が一致した場合、コメントに従って訳を変更します。
  4. 意見が一致しないものがあった場合、メンバー全員で投票します。

もちろん上記の手順に従わなければならないわけではありませんが、何らかの形で校正を行うことを強く推奨します。

接触したり会話する場所

接触したり会話する場所があれば、翻訳は非常に楽になります。おすすめは freenode の IRC 上で場所を設定し、そこで会うことです。

Firefox 利用者への小技

Firefox プラグインの "Dictionary Search" を使えば知らない単語の翻訳のスピードが上がるでしょう。知らない単語をマークして右クリック、Dictionary search を押すだけです。Dictionary search では可能な限り多くの言語を翻訳するためにいくつかのウェブサイトを利用しています。

Last modified:2010/06/25 19:45:32
Keyword(s):[fix syntax]
References:[日本語対応] [ReactOSへの参加] [翻訳] [SideMenu]