Skip to content

feat: add source_language config and lang attr for untranslated text#14429

Open
hesam-oxe wants to merge 1 commit into
sphinx-doc:masterfrom
hesam-oxe:feat/source-language-lang-attr
Open

feat: add source_language config and lang attr for untranslated text#14429
hesam-oxe wants to merge 1 commit into
sphinx-doc:masterfrom
hesam-oxe:feat/source-language-lang-attr

Conversation

@hesam-oxe
Copy link
Copy Markdown

Added source_language config option and lang attribute on
untranslated nodes for WCAG SC 3.1.2 compliance.

Problem

When working with mixed-language web content, HTML elements should use
the lang attribute to define their language if it differs from the
<html> page language. Without this, documentation produced with Sphinx
fails WCAG SC 3.1.2 Language of Parts.

Changes

  • config.py — Added source_language config option (default: "en")
  • transforms/i18n.py — Set node['lang'] to source_language on
    untranslated nodes in AddTranslationClasses
  • writers/html5.py — Override starttag() in HTML5Translator to
    respect node lang attribute

Result

Before:

<p class="untranslated">This is in English.</p>

After:

<p lang="en" class="untranslated">This is in English.</p>

References

  • WCAG SC 3.1.2 Language of Parts
  • Discussion at PyCon UK with @AA-Turner
  • Python forum: Accessibility of multilingual content

Closes #13841

Added source_language config option. Set lang attribute on untranslated nodes for WCAG 3.1.2 compliance. Closes sphinx-doc#13841
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

lang attribute set to source language for untranslated text

1 participant