Bug(バグ) #4143
完了「%my_friend%」の翻訳が「%my_friend%まで公開」になっている
100%
説明
Overview (現象)¶
翻訳カタログに、下記のような設定があるため、ナビゲーションに my_friend を設定すると %my_friend%まで公開 と表示されてしまう。
https://github.com/openpne/OpenPNE3/blob/master/apps/pc_frontend/i18n/messages.ja.xml#L289-L296
<trans-unit id=""> <source>%my_friend%</source> <target>%my_friend%まで公開</target> </trans-unit> <trans-unit id=""> <source>Only Open to %my_friend%</source> <target>%my_friend%まで公開</target> </trans-unit>
https://github.com/openpne/OpenPNE3/blob/master/apps/mobile_frontend/i18n/messages.ja.xml#L117-L124
<trans-unit id=""> <source>%my_friend%</source> <target>%my_friend%まで公開</target> </trans-unit> <trans-unit id=""> <source>Only Open to %my_friend%</source> <target>%my_friend%まで公開</target> </trans-unit>
https://github.com/openpne/OpenPNE3/blob/master/apps/pc_backend/i18n/messages.ja.xml#L51-L54
<trans-unit id=""> <source>%my_friend%</source> <target>%my_friend%まで公開</target> </trans-unit>
Causes (原因)¶
翻訳カタログに設定されている
Way to fix (修正内容)¶
翻訳カタログに下記のように設定する
<trans-unit id="">
<source>%my_friend%</source>
<target>%my_friend%</target>
</trans-unit>
<trans-unit id="">
<source>Only Open to my_friend</source>
<target>%my_friend%まで公開</target>
</trans-unit>
公開範囲用の翻訳カタログを追加する
ファイル
kaoru n さんがほぼ8年前に更新
- ステータス を New(新規) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
https://github.com/openpne/OpenPNE3/pull/438
にてプルリクエストを行いました。
レビューをお願いします。
Youichi Kimura さんがほぼ8年前に更新
管理画面のプロフィール項目編集から「公開設定変更の可否」を「メンバー選択」に設定すると、pc_frontend のプロフィール編集画面で公開範囲の選択肢が以下のように表示されます。
「全員に公開」「マイフレンド」「公開しない」の選択肢となっているこの箇所は、修正前は「マイフレンドまで公開」と表示されていました。
messages.ja.xml における %my_friend%
→ %my_friend%まで公開
の翻訳は確かに適切ではありませんが、%my_friend%
を原文として使用している箇所も合わせて修正が必要であると考えます。
kaoru n さんがほぼ8年前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
https://github.com/openpne/OpenPNE3/pull/438
にてプルリクエストを更新しました。
レビューをお願いします。
Youichi Kimura さんがほぼ8年前に更新
- ステータス を Pending Review(レビュー待ち) から Rejected(差し戻し) に変更
%my_friend%
を原文として使用している箇所について、原文そのものを変更するのではなくカタログを分離した方が良いと思います (過去に #1211-8 で類似の指摘がありました)
一般的な用途を想定した場合、「%my_friend%」を「%my_friend%まで公開」と訳すのは公開範囲以外で不都合が生じるためカタログを messages 以外のものに変更すべきです。(opDiaryPlugin では publicFlags というカタログに記述している)
#4143-6 の時点でのメッセージは以下のようになっています。
原文 | en | ja_JP |
---|---|---|
All Users on the Web | All Users on the Web | Web全体に公開 |
All Members | All Members | 全員に公開 |
Only Open to %my_friend% | Only Open to my friend | マイフレンドまで公開 |
Private | Private | 公開しない |
opDiaryPlugin では、カタログを publicFlags に分離した上で以下のように表示される実装となっています。
(ただし #4168 の影響で現時点ではこの通りに表示されません)
原文 | en | ja_JP |
---|---|---|
All Users on the Web | All Users on the Web | Web全体に公開 |
All Members | All Members | 全員に公開 |
%my_friend% | My Friends1 | マイフレンドまで公開 |
Private | Private | 公開しない |
OpenPNE 本体には i18n/publicFlags.ja.xml
が存在しないため、この方法で修正するためには opDiaryPlugin と同じ内容の publicFlags.ja.xml
を本体に追加する必要があります。
1 %my_friend%
の単語の先頭を大文字にかつ複数形で表示する場合は、Doctrine_Core::getTable('SnsTerm')->get('my_friend')->titleize()->pluralize()
のようにして出力する必要があります (複雑な使用例)
Youichi Kimura さんがほぼ8年前に更新
- ステータス を Pending Review(レビュー待ち) から Rejected(差し戻し) に変更
以下の点について修正をお願いします
- #4128-5 と同様で、messages.ja.xml にある「%my_friend%」→「%my_friend%」の翻訳は不要です
- すっかり忘れていましたが、 Rule_of_Shared_Repository_(ja) の規則からコミットメッセージは英語で記述して下さい
kaoru n さんが7年以上前に更新
- ステータス を Rejected(差し戻し) から Pending Review(レビュー待ち) に変更
https://github.com/openpne/OpenPNE3/pull/438
にてプルリクエストを更新しました。
レビューをお願いします。
Youichi Kimura さんが7年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Rejected(差し戻し) に変更
以下の箇所について修正をお願いします。
- ローカル変数
$i18n
について、ActivityDataTable.class.php
とProfileTable.class.php
の用法以外の箇所では$i18n
は使用されていないため不要です
(これまで指摘した箇所については修正済みであることを確認しました)
kaoru n さんが7年以上前に更新
- ステータス を Rejected(差し戻し) から Pending Review(レビュー待ち) に変更
https://github.com/openpne/OpenPNE3/pull/438
にてプルリクエストを更新しました。
レビューをお願いします。
Youichi Kimura さんが7年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
- 3.6 で発生するか を Unknown (未調査) から Yes (はい) に変更
- 3.8 で発生するか を Unknown (未調査) から Yes (はい) に変更
レビューOKです