[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][TOP]

Re: 単一のファイルに変更を加えると%dがそのまま表示されてしまう(書庫マネージャ)


西堀です。

http://l10n.gnome.org/POT/file-roller.master/file-roller.master.ja.po を
見てみましたが

  "Plural-Forms: nplurals=1; plural=0;\n"

とありますので、このままで単数形の訳文を加えても実際の表示には反映されな
いと思います。 反映させるためには Plural-Forms の変更が必要になります。
Plural-Forms は、GNOME 日本語の方針で上記のようになっています(誤解なき
ように申し上げると、日本語では単数形・複数形で単語を区別しないので、
GNOME 日本語のみならず他の翻訳グループでも上記のスタイルが一般的なようで
す)ので、変更したい場合はコーディネータの草野さんに相談して例外を認めて
もらう必要があるでしょう。ただ、GNOME 日本語で認められたとしても、最終的
に各ディストリビューションでそれが反映されないとあまり意味をなさないよう
に思いますので、何とも言えません。

さて、Ubuntu 10.04 の file-roller を確認してみました。若干訳文は違いまし
たが、ご報告のとおり、1つのファイルを変更した場合にはダイアログのメッ
セージ中に '%d' そのものが表示されました。
ちなみに GIMP (master をビルド) では似たような msgid 、つまり
1. msgid_plural のみに '%d' がある
2. msgstr[0] しか訳文がない
3. "Plural-Forms: nplurals=1; plural=0;\n" になっている
というケースで、単数形の場合でも意図したとおりにメッセージが表示されてい
ます。ですので、ひょっとするとソースを修正すれば file-roller でもうまく
表示されるのかもしれません(ソースを見ていない、且つ私の能力ではソースを
読解して修正することができないので確証はありませんが…)。

ブレーンストーミング的な私案では

- (バグを突き止めたとして)バグ報告をして、上記の Plural-Forms でも意図
どおりの表示がされるようにソースを修正してもらう。
- コーディネータの了解をもらい Plural-Forms を変更した上で、単数形の場合
の訳文を追加する(msgid_plural がある箇所すべてに訳文を追加する)。
- (問題ないと確認できたうえで) '%d' を含めない訳文(単数でも複数でも通
用しそうな文)に変更する。(例: "別のアプリケーションが書庫にあるファイ
ルを変更しました。この (これらの) ファイルを更新しないと変更内容が全て破
棄されます。")

のいずれかという辺りでしょうか。


西堀 清貴

(2010年08月15日 02:36), Yasumichi Akahoshi wrote:
>  書庫マネージャ(file-roller)ネタで度々失礼します。赤星です。
>  書庫内の一つのファイルを他のアプリケーションで開き、修正を加えて保存すると
> 書庫マネージャが、以下のように尋ねます。
>
> 別のアプリケーションが書庫にある %d 個のファイルを変更しました。これらのファ
> イルを更新しないと変更内容が全て破棄されます。
>
>  この時、%dがそのまま表示されてしまいます。ja.poを見たところ、言語は単数形
> では、%dを使用しておらず、複数形のみで%dを使用しているようですが、日本語訳は
> 複数形のものしか存在しないようです。
>
> 202行から
>
> #. secondary text
> #: ../data/ui/update.ui.h:2 ../src/dlg-update.c:181
> #, fuzzy, c-format
> #| msgid ""
> #| "The file has been modified with an external application. If you don't "
> #| "update the version in the archive, all of your changes will be lost."
> #| msgid_plural ""
> #| "There are %d files that have been modified with an external application. "
> #| "If you don't update the files in the archive, all of your changes will be "
> #| "lost."
> msgid ""
> "The file has been modified with an external application. If you don't update "
> "the file in the archive, all of your changes will be lost."
> msgid_plural ""
> "%d files have been modified with an external application. If you don't "
> "update the files in the archive, all of your changes will be lost."
> msgstr[0] ""
> "別のアプリケーションが書庫にある %d 個のファイルを変更しました。これらのファ"
> "イルを更新しないと変更内容が全て破棄されます。"
>
>  なので訳語を単数形用と複数形に分けた方がいいと思うのですが、以下の様な変更
> でよろしいのでしょうか?
>
> msgstr[0] ""
> "別のアプリケーションが書庫にあるファイルを変更しました。このファイルを"
> "更新しないと変更内容が全て破棄されます。"
> msgstr[1] ""
> "別のアプリケーションが書庫にある %d 個のファイルを変更しました。これらのファ"
> "イルを更新しないと変更内容が全て破棄されます。"
>
>