From c3748d6f0d548e6eabfbe8b0aca9db9936656049 Mon Sep 17 00:00:00 2001 From: cocoatomo Date: Mon, 20 Nov 2017 23:41:10 +0900 Subject: [PATCH 1/3] bpo-32087: Set appropriate "translatable" attributes for nodes --- Doc/tools/extensions/pyspecific.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Doc/tools/extensions/pyspecific.py b/Doc/tools/extensions/pyspecific.py index 00acd4f55b8b95..8d90d8f2fbacf2 100644 --- a/Doc/tools/extensions/pyspecific.py +++ b/Doc/tools/extensions/pyspecific.py @@ -208,7 +208,7 @@ def run(self): if len(self.arguments) == 3: inodes, messages = self.state.inline_text(self.arguments[2], self.lineno+1) - para = nodes.paragraph(self.arguments[2], '', *inodes) + para = nodes.paragraph(self.arguments[2], '', *inodes, translatable=False) node.append(para) else: messages = [] @@ -220,13 +220,14 @@ def run(self): content.source = node[0].source content.line = node[0].line content += node[0].children - node[0].replace_self(nodes.paragraph('', '', content)) + node[0].replace_self(nodes.paragraph('', '', content, translatable=False)) node[0].insert(0, nodes.inline('', '%s: ' % text, - classes=['versionmodified'])) + classes=['versionmodified'], translatable=True)) else: para = nodes.paragraph('', '', nodes.inline('', '%s.' % text, - classes=['versionmodified'])) + classes=['versionmodified'], translatable=True), + translatable=False) node.append(para) env = self.state.document.settings.env env.note_versionchange('deprecated', version[0], node, self.lineno) From 9a6983c6ba49415913fc114a1f9f8183bf128509 Mon Sep 17 00:00:00 2001 From: cocoatomo Date: Thu, 22 Feb 2018 09:04:35 +0900 Subject: [PATCH 2/3] Obtain a translation for the label of deprecated-removed from sphinx.po --- Doc/tools/extensions/pyspecific.py | 7 ++++--- Doc/tools/templates/dummy.html | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Doc/tools/extensions/pyspecific.py b/Doc/tools/extensions/pyspecific.py index 8d90d8f2fbacf2..06832aafc07e0e 100644 --- a/Doc/tools/extensions/pyspecific.py +++ b/Doc/tools/extensions/pyspecific.py @@ -204,7 +204,8 @@ def run(self): node['type'] = 'deprecated-removed' version = (self.arguments[0], self.arguments[1]) node['version'] = version - text = self._label % version + label = translators['sphinx'].gettext(self._label) + text = label % version if len(self.arguments) == 3: inodes, messages = self.state.inline_text(self.arguments[2], self.lineno+1) @@ -222,11 +223,11 @@ def run(self): content += node[0].children node[0].replace_self(nodes.paragraph('', '', content, translatable=False)) node[0].insert(0, nodes.inline('', '%s: ' % text, - classes=['versionmodified'], translatable=True)) + classes=['versionmodified'])) else: para = nodes.paragraph('', '', nodes.inline('', '%s.' % text, - classes=['versionmodified'], translatable=True), + classes=['versionmodified']), translatable=False) node.append(para) env = self.state.document.settings.env diff --git a/Doc/tools/templates/dummy.html b/Doc/tools/templates/dummy.html index 6e43be23230b54..8e7989aa9a157b 100644 --- a/Doc/tools/templates/dummy.html +++ b/Doc/tools/templates/dummy.html @@ -4,3 +4,4 @@ In extensions/pyspecific.py: {% trans %}CPython implementation detail:{% endtrans %} +{% trans %}Deprecated since version %s, will be removed in version %s{% endtrans %} From e55d84d6d01d2c98fdbf541f9074775a440c6546 Mon Sep 17 00:00:00 2001 From: cocoatomo Date: Fri, 23 Feb 2018 00:48:05 +0900 Subject: [PATCH 3/3] Use field_name syntax --- Doc/tools/extensions/pyspecific.py | 4 ++-- Doc/tools/templates/dummy.html | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Doc/tools/extensions/pyspecific.py b/Doc/tools/extensions/pyspecific.py index 06832aafc07e0e..47d3823e7d948b 100644 --- a/Doc/tools/extensions/pyspecific.py +++ b/Doc/tools/extensions/pyspecific.py @@ -196,7 +196,7 @@ class DeprecatedRemoved(Directive): final_argument_whitespace = True option_spec = {} - _label = 'Deprecated since version %s, will be removed in version %s' + _label = 'Deprecated since version {deprecated}, will be removed in version {removed}' def run(self): node = addnodes.versionmodified() @@ -205,7 +205,7 @@ def run(self): version = (self.arguments[0], self.arguments[1]) node['version'] = version label = translators['sphinx'].gettext(self._label) - text = label % version + text = label.format(deprecated=self.arguments[0], removed=self.arguments[1]) if len(self.arguments) == 3: inodes, messages = self.state.inline_text(self.arguments[2], self.lineno+1) diff --git a/Doc/tools/templates/dummy.html b/Doc/tools/templates/dummy.html index 8e7989aa9a157b..8d94137b01b519 100644 --- a/Doc/tools/templates/dummy.html +++ b/Doc/tools/templates/dummy.html @@ -4,4 +4,4 @@ In extensions/pyspecific.py: {% trans %}CPython implementation detail:{% endtrans %} -{% trans %}Deprecated since version %s, will be removed in version %s{% endtrans %} +{% trans %}Deprecated since version {deprecated}, will be removed in version {removed}{% endtrans %}