[JM:02179] Re: マニュアル誤記&Webページ異常:regex

Back to archive index
Akihiro Motoki amoto****@gmail*****
2021年 5月 2日 (日) 01:46:18 JST


HTML ページで \(ha が ^ に変換されない件ですが、対処しました。
今は HTML ページでも caret (^) が正常に表示されていると思います。

以下、管理者向け。
対処は man2html のソースコードを変更して対応しました。
JM リポジトリの admin/man-1.6g/man2html/strdefs.c に \(ha に対応する
エントリーを追加。(commit 5030884107e95b85c484f56a6933a0ee06cbd458)
その後、shell サーバー上で man2html をコンパイルして、
それを /home/groups/l/li/linuxjm/bin/man2html に配置しました。

On Fri, Apr 30, 2021 at 11:27 PM Akihiro Motoki <amoto****@gmail*****> wrote:
>
> ご報告ありがとうございます。
>
> On Fri, Apr 30, 2021 at 6:10 AM levelevel <level****@gmail*****> wrote:
> >
> > まず
> > https://linuxjm.osdn.jp/html/LDP_man-pages/man3/regex.3.html
> > https://linuxjm.osdn.jp/html/LDP_man-pages/man7/regex.7.html
> > ですが、「^」であるべき箇所がすべて「ha」になっています。
>
> この件ですが、JM  で HTNL への変換に使っている man2html が当該表現を
> サポートしていないことが原因と思われます。
> 最近更新した LDP man-pages 5.10 (正確なバージョンは分かりませんが) では
> ^ が \(ha という記法で表現するように統一されました。
> その結果 \(ha が正しく処理されず 'ha' に変換されているものと推測します。
>
> すぐに修正できるか分かりませんが、対処を検討します。
> 翻訳内で \(ha を ^ に置き換えるのもワークアラウンドとしては可能ですが、
> \(ha はそれなりに広く使われているので、翻訳で \(ha -> ^ を徹底できるとは
> 思えないので、もう少し根本的な対処を検討する必要があるだろうと思っています。
>
> > Ubuntu上のmanの表示は正常なのでWebページの問題だと思います。
>
> man コマンドで参照する際には、これが期待通り変換されて ^ と
> 表示されます。これが Ubuntu 上では期待通り表示される理由です。
>
> > なお
> > https://linuxjm.osdn.jp/html/GNU_grep/man1/grep.1.html
> > は「^」が正常に表示されています。
>
> こちらは翻訳版も含めて man page 内でも \(ha ではなく ^ が使用されているため、
> 正常に表示されています。
>
> >
> > 次に
> > https://linuxjm.osdn.jp/html/LDP_man-pages/man7/regex.7.html
> > ですが、「説明」の最後から2段落目の最後の文:
> > 「 '*' は、正規表現の先頭か、括弧でくくられた部分文字列の先頭に置かれた場合は通常の文字となる ('^') が前置されていてもよい)。」
> > は文として不自然で、最後の「)」の対応がありません。
> > 原文は「... (after a possible leading '^').」なの以下のようになるのが正しいと思います。
> > 「 ...通常の文字となる ('^' が前置されていてもよい)。」
>
> はい、ご指摘の通り、 '^' の直後の ) が不要です。
> こちらについては修正しました。
>
> 原文では
>
>   RE or the beginning of a parenthesized subexpression
>   (after a possible leading \(aq\(ha\(aq).
>   .PP
>
> のようになっているので、編集時に最後の \(aq の後ろの ')' を
> 取り忘れたのだと思います。
>
> 以上です。


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