[JM:02098] Re: 新しい LDP_man-pages ディレクトリの試用報告

Back to archive index
Akihiro Motoki amoto****@gmail*****
2021年 3月 20日 (土) 20:46:33 JST


On Sat, Mar 20, 2021 at 2:32 PM 長南洋一 <cyoic****@maple*****> wrote:
>
> 長南です。
>
> > なお、2箇所目は変更箇所の1行前を修正しました。
> > 元の意図はディレクトリ名を抽出することだったので。
> >
> > -SEC=$(echo $CFG | cut -d / -f 3)
> > +SEC=$(echo $CFG | cut -d / -f 2)
>
> この方が、筋が通っていますね。
>
> とにかく、どうなるかを試すために、実験環境で open.2 の翻訳を
> 80% 以上にして、"make translate" をやってみました。open.2 を
> 選んだのは、以前「以降」が「行こう」になっていると、バグ報告があったのを
> 憶えていたからです。そこだけで済ますつもりでしたが、翻訳率が 68%ぐらい
> だったので、fuzzy をいっぱい直さなければなりませんでした。パーセントを
> 上げることだけ考えていましたから、訳文は使い物になりません。

試してもらってありがとうございます。

翻訳率が 68% 程度になっているのは、LDP 5.10 にアップデートしてしまいましょう、
ということだったので、LDP 5.10 に更新済みだからです。
メールに書いた通り、fuzzy/untranslated は軽微なものも含め全く触っていません。

LDP 5.10 更新前は open.2 というか stdio/po/ja.po は翻訳率は 100% でした。
翻訳率が下がっているのは LDP man-pages 5.10 に更新してみた (想定通りの) 副作用です。
現状の release 以下にあるページを修正するだけなら、
以前の LDP man-pages 3.79 ベースなら 1行修正するだけだったはずです。

> "git status" をすると、stats/* のファイルがたくさん変更されているほかに、
> po4a/stdio/po/ja.po と untrans.html が変更され (当然ですね)、
> draft/man2/open.2 が新しく出来ていました。その他に変更はないようです。
> こういうものなんですね。
>
> open.2 の翻訳率が上がっているのを確認しようと、"firefox untrans.html"
> をやってみたら、ヘッダしか表示されません。stats/ 以下のファイルは、みんな
> サイズが 0 になっています。Makefile を見て、tools 以下の generate-list.pl
> を見て、extract-untrans.pl を見て、やっと手がかりを掴みました。
>
> LDP_man-pages における make は、原則として LANG=C で実行しなければ
> ならないのではありませんか。LANG=C にして、"make clean-stats" と
> "make update-stats" をやったところ、"firefox untrans.html" で
> 表が表示されるようになりました。
>
> 「翻訳ガイド」に「make は LANG=C で実行せよ」と書いておいた方が
> よいと思います。すでに書いてあったら、ご容赦。

LANG=C の点は、申し訳ありません。私のミスです。
manual/LDP_man-pages/Makefile に perkamon/Makefile の内容をマージした際に
LC_ALL=C の指定を落としてしまったようです。
以下のようになっているべきでした。お手数おかけしてすみません。
修正版を git push しました。

# 現在の私の常用環境が LANG=en_US.UTF-8 もしくは
# "LANG=ja_JP.UTF-8, LC_MESSAGES=C, LC_TIME=C" なので気付かなかったです。
# 日本語メッセージを見ていないのがバレバレ

--- a/manual/LDP_man-pages/Makefile
+++ b/manual/LDP_man-pages/Makefile
@@ -41,7 +41,7 @@ stats/%:      stamp-setup po4a/%/po/ja.po
        mkdir -p _transtmp
        $(RM) build/ja
        ln -s ../_transtmp build/ja
-       po4a -k 100 $(FLAGS) --variable langs='$(LANGS)' --previous
--srcdir . --destdir . po4a/$*/$*.cfg | tee _log.txt
+       LC_ALL=C po4a -k 100 $(FLAGS) --variable langs='$(LANGS)'
--previous --srcdir . --destdir . po4a/$*/$*.cfg | tee _log.txt
        ./tools/extract-untrans.pl < _log.txt > $@
        $(RM) build/ja
        ln -s ../draft build/ja

> とにかく、どうなるかを試すために、実験環境で open.2 の翻訳を
> 80% 以上にして、"make translate" をやってみました。open.2 を
[...]
> "git status" をすると、stats/* のファイルがたくさん変更されているほかに、

引用順序が前後しますが、
stats/* 以下のファイルがたくさん変更されているのは、
上記の LC_ALL 指定忘れが原因だと思います。
open.2 は stdio なので、stats/stdio だけが更新されるのが私が期待している動作です。

>
> ついでですから、「翻訳ガイド」からもう一つ。
>
>   $ man -l draft/man3/strptime.3
>
> 小さいことですが、これだと、日本語の整形が乱れることがあります
> (man の新バージョンでは改善されているかもしれません)。次のようにした方が、
> 日本語の整形がずっとマシになります (末尾の '-' はゴミではありません。念のため)。
>
>   $ (echo .mso ja.tmac; cat draft/man3/strptime.3) |man -l -

整形した際に、行内の空白が多くなって読みにくくなる話ですよね。
逆に、これは一般的な情報なので、LDP man-pages のガイドに書く必要はないかな、
と思いました。「生成された draft/man3/strptime.3 を確認してください、整形して確認して
みるのもよいでしょう」で終わりでいいかもしれません。
たぶん長南さんが書いているのは全部のページに共通する情報だと思いますので、
ガイドのもっと共通の場所に書いておくべきなのでしょう。
その意味では、LDP のガイドは私のメモ以上の域になっていないと思います。
長南さんがコメントしてくれたのが初めてなのですから無理もありませんが。

> それから、po4a のバージョンアップのせいで問題が出たとおっしゃっていましたが、
> 推奨バージョンというのはあるのですか。うちの場合、debian 10 の po4a は
> 0.55 ですが、上に書いた程度のことは出来ました。

po4a の推奨バージョンとかはわかりません。
その時点である程度最新というくらいではないでしょうか。
現時点のものは Ubuntu 20.04 (focal) の po4a 0.57 で動作確認していますが、
試しに Ubuntu 18.04 (bionic) の po4a 0.52 だと unknown macro が見つかり変換が止まりました。

問題が出たというのは、5年前の LDP man-pages の po4a 環境に対して、
現在の po4a  (私の場合は 0.57) を使った際の話です。po4a のテーブルの抽出方法が
変わっていて、大量の fuzzy/untranslated が出ました。
その状況はすでに私が解消しているので、動くはずです。
以下がその修正を行ったときのコミット。
8000 個くらいの fuzzy/untranslated を修正しました。
この程度の対応が必要になることもあります。

po4a を使う以上、こういった問題はある程度は避けられないことだと思っています。
なので、po4a の挙動が変わったときには全ページをチェックできた方がいいのかなと
いうのも今の仕組みになっている一つの理由です。翻訳更新が必要になったときに
その人が対処すればいいというのもあると思いますが。

$ git show --stat ecc982ccf9cc8f67a43f6abe68864fc52aed4687 --
manual/LDP_man-pages/po4a/
commit ecc982ccf9cc8f67a43f6abe68864fc52aed4687
Author: Akihiro Motoki <amoto****@gmail*****>
Date:   Mon Mar 8 09:01:27 2021 +0900

    Adjust translations with po4a update

    I confirmed almost all translations are not changed in draft pages.

 manual/LDP_man-pages/po4a/charset/po/ja.po    | 8216
++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------
 manual/LDP_man-pages/po4a/filesystem/po/ja.po |  550 ++++------
 manual/LDP_man-pages/po4a/intro/po/ja.po      | 2152
++++++++++++++++-----------------------
 manual/LDP_man-pages/po4a/locale/po/ja.po     |   88 +-
 manual/LDP_man-pages/po4a/man3/po/ja.po       |   56 +-
 manual/LDP_man-pages/po4a/man5/po/ja.po       |  363 +++----
 manual/LDP_man-pages/po4a/math/po/ja.po       |  374 ++-----
 manual/LDP_man-pages/po4a/mqueue/po/ja.po     |  100 +-
 manual/LDP_man-pages/po4a/net/po/ja.po        |  488 ++++-----
 manual/LDP_man-pages/po4a/netlink/po/ja.po    |  819 ++++++---------
 manual/LDP_man-pages/po4a/process/po/ja.po    |   75 +-
 manual/LDP_man-pages/po4a/regexp/po/ja.po     |   38 +-
 manual/LDP_man-pages/po4a/signal/po/ja.po     |  411 ++++----
 manual/LDP_man-pages/po4a/socket/po/ja.po     |  312 ++----
 manual/LDP_man-pages/po4a/special/po/ja.po    | 2230
++++++++++++++++------------------------
 manual/LDP_man-pages/po4a/stdio/po/ja.po      |  415 +++-----
 manual/LDP_man-pages/po4a/stdlib/po/ja.po     |  400 +++-----
 manual/LDP_man-pages/po4a/unistd/po/ja.po     | 6084
+++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------
 18 files changed, 8582 insertions(+), 14589 deletions(-)


linuxjm-discuss メーリングリストの案内
Back to archive index