Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

見出しが訳されて id が変化したのにリンクの [~](~#id) が訳されていないものが多い #11562

Open
manjuu-eater opened this issue Feb 10, 2023 · 4 comments
Labels
effort: large Task is large effort. l10n-ja Issues related to Japanese content.

Comments

@manjuu-eater
Copy link
Contributor

manjuu-eater commented Feb 10, 2023

MDN URL

https://developer.mozilla.org/ja/docs/Glossary/baseline

この問題に関する節や見出しはどこですか。

技術リファレンス

不完全、不親切、不完全であった情報は何ですか。

例えばこのページの「CSS ボックス配置」というリンクは
https://developer.mozilla.org/ja/docs/Web/CSS/CSS_Box_Alignment#types_of_alignment
というURLをリンク先に指定していますが、リンク先の日本語のページには Types of alignment という見出しが存在しないため、id="types_of_alignment" が存在せずページトップへのリンクになります。

en-US版ではちゃんと Types of alignment という見出しが存在するため、
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Alignment#types_of_alignment
というURLでちゃんと目的の見出しに到達します。

どう表示されるべきだと思いますか。

日本語のURLは本来は
https://developer.mozilla.org/ja/docs/Web/CSS/CSS_Box_Alignment#配置の種類
となっているべきだと思われます。

補足情報となるリンク、参考資料、引用文献はありますか。

No response

他に共有したいことはありますか。

とりあえず、/files/ja/**/* から (?<=\]\()((?<!http)[^)])*#[ -$&-(*-~]+(?=\)) の正規表現で検索したところ、2675件の結果がヒットしました…。

参考:ヒットした結果の上の方の何行か

files/ja/games/techniques/3d_on_the_web/basic_theory/index.md:
  57: [Camera の段落](/ja/docs/Games/Techniques/3D_on_the_web/Building_up_a_basic_demo_with_Three.js#camera)

files/ja/games/techniques/3d_on_the_web/glsl_shaders/index.md:
  100: [頂点処理の段落](/ja/docs/Games/Techniques/3D_on_the_web/Basic_theory#vertex_processing)

files/ja/games/techniques/3d_on_the_web/webvr/index.md:
  34: [立体画像](/ja/docs/Web/API/WebVR_API/Concepts#stereoscopic_vision)

files/ja/games/techniques/audio_for_web_games/index.md:
  27: [自動再生ポリシーの最善の手法はこちら](/ja/docs/Web/API/Web_Audio_API/Best_practices#autoplay_policy)
  41: [多くのプロパティ](/ja/docs/Web/API/HTMLMediaElement#properties)

files/ja/glossary/baseline/index.md:
  20: [CSS ボックス配置](/ja/docs/Web/CSS/CSS_Box_Alignment#Types_of_alignment)

files/ja/glossary/class/index.md:
  12: [クラスベース言語とプロトタイプベース言語](/ja/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#Class-based_vs._prototype-based_languages)
  13: [JavaScript におけるクラスとしての関数の利用](/ja/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript#The_Class)

MDN metadata

Page report details
@manjuu-eater manjuu-eater added l10n-ja Issues related to Japanese content. needs triage Triage needed by staff and/or partners. Automatically applied when an issue is opened. labels Feb 10, 2023
@manjuu-eater
Copy link
Contributor Author

リンク先を日本語に修正するとして、意図したリンク先になっているか意味的に判断しないといけないと思われるので大変そうです。

@yin1999 yin1999 removed the needs triage Triage needed by staff and/or partners. Automatically applied when an issue is opened. label Feb 10, 2023
@potappo potappo added the effort: large Task is large effort. label Feb 12, 2023
@potappo
Copy link
Collaborator

potappo commented Feb 12, 2023

作業優先度の参考になるかと思い、Grep結果の一覧をスプレッドシートに保存しました(件数は違いますが、検索条件は同じなので合っているはず)
https://docs.google.com/spreadsheets/d/1tSNXf0AOnLxEbV9KwkN-4Vtr9_Qb-TLc5vdeJzA6eC8/edit#gid=0

スクリプトで機械的に置換できるのが理想かと思いますが、環境構築に手間取り、今日はそこまではいけませんでした。

リンク先ドキュメントの英語版と日本語版の見出しを比較して、章の構成さえずれていなければ、上手くマッチングできるかも?と思いますが、検証できていません。

@manjuu-eater
Copy link
Contributor Author

調査ありがとうございます!(それにしてもすごい量ですね…)

日本語のID未訳リンクをblameしてみて、リンク追加当時のen-USの記事を見て章の構成を比較してあれやこれやするといいかもしれないですね。
今度ヒマだったら試してみようかと思います。

ちなみに件数ですが、最初に「2675件」と書いたのはまあまあ関係ないのも混じってる数です。

@debiru
Copy link
Contributor

debiru commented May 27, 2023

あまり役に立つ情報ではないのですが、調査してみた結果を書いておきます。

ドキュメントをパースして、英語版と日本語版の見出しテキストを抽出してみました。残念ながら、意外と英語版と日本語版で「見出しの個数がずれている」ページが多いようです。そのため、見出しの位置だけでマッピングしようとすると全く関係ない見出しになってしまう可能性があります。見出しの個数が一致していたとしても、その対応が正しい保証がありませんね。

そして、スクリプトを組んで本格的にドキュメント全体をパースしてみたのですが、パースした結果をどうするんだというところで止まっています。手元でページのリダイレクトなども考慮しつつ「日本語ページへの英語ハッシュ付きリンクのうち、ページ側に対応する id 属性値がないリンク一覧」を抽出してみました。そのようなリンクは約3000件見つかりました。

しかし、実はその中に適切なリンクが存在することがわかりました。https://developer.mozilla.org/ja/docs/web/html/element/input#src このようなケースです。見出しではなく dt 要素に id 属性が振られています。こういうケースは全体の中でそれほど数が多くないと思いますが、スクリプトで自動処理しようとする場合には考慮が必要なリンクと言えるかもしれません。

他に、注意すべき点として以下のようなリンクも存在しています。

[`addEventListener()` 関数は何をするものか、どのように使うのか](</ja/docs/Learn/JavaScript/Building_blocks/Events#addEventListener()_and_removeEventListener()>)

[...](<foobar#hash()>) のような形式で、主にハッシュ中に ) を使いたいケースで <> を付与したリンクになっているものがあります。

うーん、この問題は一括処理をするにも置換の対応表を用意するのが難しく、手作業でやるにしても量が多いため対応は困難かもしれません。何かよいアイデアがあればよいのですが。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
effort: large Task is large effort. l10n-ja Issues related to Japanese content.
Projects
None yet
Development

No branches or pull requests

4 participants