Date: prev next · Thread: first prev next last
2017 Archives by date, by thread · List index


西堀です。

git master (2859c2541d0da5dc689d912a166f370ced9dc8de) のビルド後 .pot を生成してみたところ、これまで経験した憶えがない事象に遭遇しました。一部の .pot で msgid が二重定義されている旨のエラーが発生しました。

1. 再現方法
1-1. git master (2859c2541d0da5dc689d912a166f370ced9dc8de) をビルドする。
1-2. make translations を実行して workdir/pot を生成する。
3-3. 各 .pot に msgfmt -cv -o /dev/null を実行する。具体的には (カレントが workdir で)for i in `find pot -name "*.pot" -print|sort`;do msgfmt -cv -o /dev/null $i >> pots-status 2>&1; done; grep --before-context=0 --after-context=1 -e '定義' pots-status > pots-error; rm pots-status
# 拙いコマンドですみません……

2. 結果
上記の方法にて生成した pots-error を以下に記します。
--(ここから)--
pot/basic/source/classes.pot:893: メッセージが二重に定義されています... pot/basic/source/classes.pot:814: ...これは最初の定義の場所です
msgfmt: 1 個の致命的エラーが見つかりました
--
pot/formula/source/core/resource.pot:193: メッセージが二重に定義されています... pot/formula/source/core/resource.pot:184: ...これは最初の定義の場所です pot/formula/source/core/resource.pot:413: メッセージが二重に定義されています... pot/formula/source/core/resource.pot:224: ...これは最初の定義の場所です
msgfmt: 2 個の致命的エラーが見つかりました
--
pot/sc/source/ui/src.pot:24279: メッセージが二重に定義されています... pot/sc/source/ui/src.pot:24260: ...これは最初の定義の場所です pot/sc/source/ui/src.pot:24689: メッセージが二重に定義されています... pot/sc/source/ui/src.pot:24670: ...これは最初の定義の場所です pot/sc/source/ui/src.pot:24739: メッセージが二重に定義されています... pot/sc/source/ui/src.pot:24720: ...これは最初の定義の場所です pot/sc/source/ui/src.pot:24789: メッセージが二重に定義されています... pot/sc/source/ui/src.pot:24770: ...これは最初の定義の場所です
msgfmt: 4 個の致命的エラーが見つかりました
--
pot/scaddins/source/analysis.pot:2165: メッセージが二重に定義されています... pot/scaddins/source/analysis.pot:2146: ...これは最初の定義の場所です pot/scaddins/source/analysis.pot:2265: メッセージが二重に定義されています... pot/scaddins/source/analysis.pot:2256: ...これは最初の定義の場所です pot/scaddins/source/analysis.pot:2285: メッセージが二重に定義されています... pot/scaddins/source/analysis.pot:2276: ...これは最初の定義の場所です
msgfmt: 3 個の致命的エラーが見つかりました
--
pot/sd/source/core.pot:574: メッセージが二重に定義されています...
pot/sd/source/core.pot:565: ...これは最初の定義の場所です
msgfmt: 1 個の致命的エラーが見つかりました
--
pot/svtools/source/misc.pot:611: メッセージが二重に定義されています... pot/svtools/source/misc.pot:602: ...これは最初の定義の場所です
msgfmt: 1 個の致命的エラーが見つかりました
--
pot/svx/source/dialog.pot:4385: メッセージが二重に定義されています... pot/svx/source/dialog.pot:4236: ...これは最初の定義の場所です pot/svx/source/dialog.pot:4485: メッセージが二重に定義されています... pot/svx/source/dialog.pot:4476: ...これは最初の定義の場所です
msgfmt: 2 個の致命的エラーが見つかりました
--
pot/svx/source/src.pot:63: メッセージが二重に定義されています...
pot/svx/source/src.pot:54: ...これは最初の定義の場所です
pot/svx/source/src.pot:133: メッセージが二重に定義されています...
pot/svx/source/src.pot:124: ...これは最初の定義の場所です
pot/svx/source/src.pot:363: メッセージが二重に定義されています...
pot/svx/source/src.pot:304: ...これは最初の定義の場所です
pot/svx/source/src.pot:825: メッセージが二重に定義されています...
pot/svx/source/src.pot:816: ...これは最初の定義の場所です
msgfmt: 4 個の致命的エラーが見つかりました
--
pot/sw/source/ui/utlui.pot:1976: メッセージが二重に定義されています... pot/sw/source/ui/utlui.pot:1957: ...これは最初の定義の場所です
msgfmt: 1 個の致命的エラーが見つかりました
--(ここまで)--

エラー箇所付近を見てみると、msgid, msgctxt, keyid(を示すコメント)が確かに重複しています。

3. 相談事項
3-1. まず、皆さんのところでは再現するでしょうか。
3-2. 過去にもこのようなことはあったのでしょうか。
3-3. LibreOffice は gettext の仕組みをそのまま利用しているわけではないので、このエラーは、そもそも心配する必要がないのでしょうか。

ご存じの方、ご教示いただければ幸いです。

西堀


--
Unsubscribe instructions: E-mail to discuss+unsubscribe@ja.libreoffice.org
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/ja/discuss/
All messages sent to this list will be publicly archived and cannot be deleted

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.