Merge branch '3.x'

This commit is contained in:
Takeshi KOMIYA 2020-05-17 19:12:56 +09:00
commit 3c7d35d2a2
114 changed files with 2863 additions and 2490 deletions

View File

@ -85,6 +85,7 @@ Other contributors, listed alphabetically, are:
* Daniel Pizetta -- inheritance diagram improvements
* KINEBUCHI Tomohiko -- typing Sphinx as well as docutils
* Adrián Chaves (Gallaecio) -- coverage builder improvements
* Lars Hupfeldt Nielsen - OpenSSL FIPS mode md5 bug fix
Many thanks for all contributions!

27
CHANGES
View File

@ -64,6 +64,7 @@ Deprecated
generate_autosummary_docs()``
* The ``ignore`` argument of ``sphinx.util.docstring.prepare_docstring()``
* ``sphinx.ext.autosummary.generate.AutosummaryRenderer.exists()``
* ``sphinx.util.rpartition()``
Features added
--------------
@ -107,6 +108,7 @@ Features added
* C++, parse trailing return types.
* #7143: py domain: Add ``:final:`` option to :rst:dir:`py:class:`,
:rst:dir:`py:exception:` and :rst:dir:`py:method:` directives
* #7596: py domain: Change a type annotation for variables to a hyperlink
* #7582: napoleon: a type for attribute are represented like type annotation
Bugs fixed
@ -121,10 +123,30 @@ Bugs fixed
* #6857: autodoc: failed to detect a classmethod on Enum class
* #7562: autodoc: a typehint contains spaces is wrongly rendered under
autodoc_typehints='description' mode
* #7551: autodoc: failed to import nested class
* #7362: autodoc: does not render correct signatures for built-in functions
* #7654: autodoc: ``Optional[Union[foo, bar]]`` is presented as
``Union[foo, bar, None]``
* #7629: autodoc: autofunction emits an unfriendly warning if an invalid object
specified
* #7650: autodoc: undecorated signature is shown for decorated functions
* #7676: autodoc: typo in the default value of autodoc_member_order
* #7551: autosummary: a nested class is indexed as non-nested class
* #7661: autosummary: autosummary directive emits warnings twices if failed to
import the target module
* #7535: sphinx-autogen: crashes when custom template uses inheritance
* #7536: sphinx-autogen: crashes when template uses i18n feature
* #7653: sphinx-quickstart: Fix multiple directory creation for nested relpath
* #2785: html: Bad alignment of equation links
* #7581: napoleon: bad parsing of inline code in attribute docstrings
* #7628: imgconverter: runs imagemagick once unnecessary for builders not
supporting images
* #7610: incorrectly renders consecutive backslashes for docutils-0.16
* #7646: handle errors on event handlers
* C++, fix rendering and xrefs in nested names explicitly starting
in global scope, e.g., ``::A::B``.
* C, fix rendering and xrefs in nested names explicitly starting
in global scope, e.g., ``.A.B``.
Testing
--------
@ -148,6 +170,9 @@ Bugs fixed
----------
* #7567: autodoc: parametrized types are shown twice for generic types
* #7637: autodoc: system defined TypeVars are shown in Python 3.9
* #7611: md5 fails when OpenSSL FIPS is enabled
* #7626: release package does not contain ``CODE_OF_CONDUCT``
Testing
--------
@ -1432,7 +1457,7 @@ Incompatible changes
object. Please use ``config.gettext_compact`` instead.
* The processing order on reading phase is changed. smart_quotes, sphinx
domains, :event:`doctree-read` event and versioning doctrees are invoked
earlier than so far. For more details, please read a description of
earlier than so far. For more details, please read a description of
:py:meth:`.Sphinx.add_transform()`
* #4827: All ``substitution_definition`` nodes are removed from doctree on
reading phase

View File

@ -3,6 +3,7 @@ include LICENSE
include AUTHORS
include CHANGES
include CHANGES.old
include CODE_OF_CONDUCT
include CONTRIBUTING.rst
include EXAMPLES

View File

@ -108,6 +108,11 @@ The following is a list of deprecated interfaces.
- 5.0
- N/A
* - ``sphinx.util.rpartition()``
- 3.1
- 5.0
- ``str.rpartition()``
* - ``desc_signature['first']``
-
- 3.0

View File

@ -1384,7 +1384,7 @@ that use Sphinx's HTMLWriter class.
.. versionadded:: 1.3
.. versionchanged:: 2.4
.. versionchanged:: 3.0
It is disabled for images having ``no-scaled-link`` class

View File

@ -109,6 +109,13 @@ class desc_signature(nodes.Part, nodes.Inline, nodes.TextElement):
In that case all child nodes must be ``desc_signature_line`` nodes.
"""
@property
def child_text_separator(self):
if self.get('is_multiline'):
return ' '
else:
return super().child_text_separator
class desc_signature_line(nodes.Part, nodes.Inline, nodes.FixedTextElement):
"""Node for a line in a multi-line object signatures.
@ -147,6 +154,9 @@ class desc_parameterlist(nodes.Part, nodes.Inline, nodes.FixedTextElement):
"""Node for a general parameter list."""
child_text_separator = ', '
def astext(self):
return '({})'.format(super().astext())
class desc_parameter(nodes.Part, nodes.Inline, nodes.FixedTextElement):
"""Node for a single parameter."""

View File

@ -200,7 +200,7 @@ class Sphinx:
# notice for parallel build on macOS and py38+
if sys.version_info > (3, 8) and platform.system() == 'Darwin' and parallel > 1:
logger.info(bold(__("For security reason, parallel mode is disabled on macOS and "
"python3.8 and above. For more details, please read "
"python3.8 and above. For more details, please read "
"https://github.com/sphinx-doc/sphinx/issues/6803")))
# status code for command-line application

View File

@ -12,7 +12,6 @@ import html
import posixpath
import re
import sys
from hashlib import md5
from os import path
from typing import Any, Dict, IO, Iterable, Iterator, List, Set, Tuple, Type
@ -36,7 +35,7 @@ from sphinx.highlighting import PygmentsBridge
from sphinx.locale import _, __
from sphinx.search import js_index
from sphinx.theming import HTMLThemeFactory
from sphinx.util import logging, progress_message, status_iterator
from sphinx.util import logging, progress_message, status_iterator, md5
from sphinx.util.docutils import is_html5_writer_available, new_document
from sphinx.util.fileutil import copy_asset
from sphinx.util.i18n import format_date

View File

@ -64,7 +64,7 @@ def handle_exception(app: Sphinx, args: Any, exception: BaseException, stderr: I
print(terminal_safe(str(exception)), file=stderr)
print(file=stderr)
print(__('This can happen with very large or deeply nested source '
'files. You can carefully increase the default Python '
'files. You can carefully increase the default Python '
'recursion limit of 1000 in conf.py with e.g.:'), file=stderr)
print(' import sys; sys.setrecursionlimit(1500)', file=stderr)
else:
@ -107,7 +107,7 @@ Generate documentation from source files.
sphinx-build generates documentation from the files in SOURCEDIR and places it
in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration
settings. The 'sphinx-quickstart' tool may be used to generate template files,
settings. The 'sphinx-quickstart' tool may be used to generate template files,
including 'conf.py'
sphinx-build can create documentation in different formats. A format is

View File

@ -237,7 +237,7 @@ def ask_user(d: Dict) -> None:
print(__('Sphinx has the notion of a "version" and a "release" for the\n'
'software. Each version can have multiple releases. For example, for\n'
'Python the version is something like 2.5 or 3.0, while the release is\n'
'something like 2.5.1 or 3.0a1. If you don\'t need this dual structure,\n'
'something like 2.5.1 or 3.0a1. If you don\'t need this dual structure,\n'
'just set both to the same value.'))
d['version'] = do_prompt(__('Project version'), '', allow_empty)
if 'release' not in d:
@ -258,7 +258,7 @@ def ask_user(d: Dict) -> None:
if 'suffix' not in d:
print()
print(__('The file name suffix for source files. Commonly, this is either ".txt"\n'
'or ".rst". Only files with this suffix are considered documents.'))
'or ".rst". Only files with this suffix are considered documents.'))
d['suffix'] = do_prompt(__('Source file suffix'), '.rst', suffix)
if 'master' not in d:
@ -319,6 +319,7 @@ def generate(d: Dict, overwrite: bool = True, silent: bool = False, templatedir:
d.setdefault('extensions', [])
d['copyright'] = time.strftime('%Y') + ', ' + d['author']
d["path"] = os.path.abspath(d['path'])
ensuredir(d['path'])
srcdir = path.join(d['path'], 'source') if d['sep'] else d['path']

View File

@ -186,11 +186,17 @@ class ASTNestedName(ASTBase):
# If lastIsName, then wrap all of the prefix in a desc_addname,
# else append directly to signode.
# TODO: also for C?
# NOTE: Breathe relies on the prefix being in the desc_addname node,
# NOTE: Breathe previously relied on the prefix being in the desc_addname node,
# so it can remove it in inner declarations.
dest = signode
if mode == 'lastIsName':
dest = addnodes.desc_addname()
if self.rooted:
prefix += '.'
if mode == 'lastIsName' and len(names) == 0:
signode += nodes.Text('.')
else:
dest += nodes.Text('.')
for i in range(len(names)):
ident = names[i]
if not first:

View File

@ -752,11 +752,17 @@ class ASTNestedName(ASTBase):
names = self.names[:-1] if mode == 'lastIsName' else self.names
# If lastIsName, then wrap all of the prefix in a desc_addname,
# else append directly to signode.
# NOTE: Breathe relies on the prefix being in the desc_addname node,
# NOTE: Breathe previously relied on the prefix being in the desc_addname node,
# so it can remove it in inner declarations.
dest = signode
if mode == 'lastIsName':
dest = addnodes.desc_addname()
if self.rooted:
prefix += '::'
if mode == 'lastIsName' and len(names) == 0:
signode += nodes.Text('::')
else:
dest += nodes.Text('::')
for i in range(len(names)):
nne = names[i]
template = self.templates[i]
@ -3722,8 +3728,8 @@ class LookupKey:
class Symbol:
debug_indent = 0
debug_indent_string = " "
debug_lookup = False
debug_show_tree = False
debug_lookup = False # overridden by the corresponding config value
debug_show_tree = False # overridden by the corresponding config value
@staticmethod
def debug_print(*args: Any) -> None:
@ -7383,9 +7389,18 @@ def setup(app: Sphinx) -> Dict[str, Any]:
app.add_config_value("cpp_paren_attributes", [], 'env')
app.add_post_transform(AliasTransform)
# debug stuff
app.add_config_value("cpp_debug_lookup", False, '')
app.add_config_value("cpp_debug_show_tree", False, '')
def setDebugFlags(app):
Symbol.debug_lookup = app.config.cpp_debug_lookup
Symbol.debug_show_tree = app.config.cpp_debug_show_tree
app.connect("builder-inited", setDebugFlags)
return {
'version': 'builtin',
'env_version': 2,
'env_version': 3,
'parallel_read_safe': True,
'parallel_write_safe': True,
}

View File

@ -74,17 +74,19 @@ ModuleEntry = NamedTuple('ModuleEntry', [('docname', str),
('deprecated', bool)])
def type_to_xref(text: str) -> addnodes.pending_xref:
"""Convert a type string to a cross reference node."""
if text == 'None':
reftype = 'obj'
else:
reftype = 'class'
return pending_xref('', nodes.Text(text),
refdomain='py', reftype=reftype, reftarget=text)
def _parse_annotation(annotation: str) -> List[Node]:
"""Parse type annotation."""
def make_xref(text: str) -> addnodes.pending_xref:
if text == 'None':
reftype = 'obj'
else:
reftype = 'class'
return pending_xref('', nodes.Text(text),
refdomain='py', reftype=reftype, reftarget=text)
def unparse(node: ast.AST) -> List[Node]:
if isinstance(node, ast.Attribute):
return [nodes.Text("%s.%s" % (unparse(node.value)[0], node.attr))]
@ -130,10 +132,10 @@ def _parse_annotation(annotation: str) -> List[Node]:
result = unparse(tree)
for i, node in enumerate(result):
if isinstance(node, nodes.Text):
result[i] = make_xref(str(node))
result[i] = type_to_xref(str(node))
return result
except SyntaxError:
return [make_xref(annotation)]
return [type_to_xref(annotation)]
def _parse_arglist(arglist: str) -> addnodes.desc_parameterlist:
@ -590,7 +592,7 @@ class PyVariable(PyObject):
typ = self.options.get('type')
if typ:
signode += addnodes.desc_annotation(typ, ': ' + typ)
signode += addnodes.desc_annotation(typ, '', nodes.Text(': '), type_to_xref(typ))
value = self.options.get('value')
if value:
@ -750,7 +752,7 @@ class PyAttribute(PyObject):
typ = self.options.get('type')
if typ:
signode += addnodes.desc_annotation(typ, ': ' + typ)
signode += addnodes.desc_annotation(typ, '', nodes.Text(': '), type_to_xref(typ))
value = self.options.get('value')
if value:

View File

@ -15,7 +15,7 @@ from operator import attrgetter
from typing import Any, Callable, Dict, List, NamedTuple
from typing import TYPE_CHECKING
from sphinx.errors import ExtensionError
from sphinx.errors import ExtensionError, SphinxError
from sphinx.locale import __
from sphinx.util import logging
@ -95,7 +95,13 @@ class EventManager:
results = []
listeners = sorted(self.listeners[name], key=attrgetter("priority"))
for listener in listeners:
results.append(listener.handler(self.app, *args))
try:
results.append(listener.handler(self.app, *args))
except SphinxError:
raise
except Exception as exc:
raise ExtensionError(__("Handler %r for event %r threw an exception") %
(listener.handler, name)) from exc
return results
def emit_firstresult(self, name: str, *args: Any) -> Any:

View File

@ -17,13 +17,12 @@ from inspect import Parameter
from types import ModuleType
from typing import Any, Callable, Dict, Iterator, List, Sequence, Set, Tuple, Type, Union
from typing import TYPE_CHECKING
from unittest.mock import patch
from docutils.statemachine import StringList
import sphinx
from sphinx.application import Sphinx
from sphinx.config import ENUM
from sphinx.config import Config, ENUM
from sphinx.deprecation import RemovedInSphinx50Warning
from sphinx.environment import BuildEnvironment
from sphinx.ext.autodoc.importer import import_object, get_module_members, get_object_members
@ -32,7 +31,7 @@ from sphinx.locale import _, __
from sphinx.pycode import ModuleAnalyzer, PycodeError
from sphinx.util import inspect
from sphinx.util import logging
from sphinx.util import rpartition
from sphinx.util import split_full_qualified_name
from sphinx.util.docstrings import extract_metadata, prepare_docstring
from sphinx.util.inspect import getdoc, object_description, safe_getattr, stringify_signature
from sphinx.util.typing import stringify as stringify_typehint
@ -311,7 +310,8 @@ class Documenter:
modname = None
parents = []
self.modname, self.objpath = self.resolve_name(modname, parents, path, base)
with mock(self.env.config.autodoc_mock_imports):
self.modname, self.objpath = self.resolve_name(modname, parents, path, base)
if not self.modname:
return False
@ -419,8 +419,15 @@ class Documenter:
directive = getattr(self, 'directivetype', self.objtype)
name = self.format_name()
sourcename = self.get_sourcename()
self.add_line('.. %s:%s:: %s%s' % (domain, directive, name, sig),
sourcename)
# one signature per line, indented by column
prefix = '.. %s:%s:: ' % (domain, directive)
for i, sig_line in enumerate(sig.split("\n")):
self.add_line('%s%s%s' % (prefix, name, sig_line),
sourcename)
if i == 0:
prefix = " " * len(prefix)
if self.options.noindex:
self.add_line(' :noindex:', sourcename)
if self.objpath:
@ -893,8 +900,14 @@ class ModuleLevelDocumenter(Documenter):
) -> Tuple[str, List[str]]:
if modname is None:
if path:
modname = path.rstrip('.')
else:
stripped = path.rstrip('.')
modname, qualname = split_full_qualified_name(stripped)
if qualname:
parents = qualname.split(".")
else:
parents = []
if modname is None:
# if documenting a toplevel object without explicit module,
# it can be contained in another auto directive ...
modname = self.env.temp_data.get('autodoc:module')
@ -927,8 +940,13 @@ class ClassLevelDocumenter(Documenter):
# ... if still None, there's no way to know
if mod_cls is None:
return None, []
modname, cls = rpartition(mod_cls, '.')
parents = [cls]
try:
modname, qualname = split_full_qualified_name(mod_cls)
parents = qualname.split(".") if qualname else []
except ImportError:
parents = mod_cls.split(".")
# if the module name is still missing, get it like above
if not modname:
modname = self.env.temp_data.get('autodoc:module')
@ -1026,43 +1044,19 @@ class FunctionDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # typ
if self.env.config.autodoc_typehints in ('none', 'description'):
kwargs.setdefault('show_annotation', False)
unwrapped = inspect.unwrap(self.object)
if ((inspect.isbuiltin(unwrapped) or inspect.ismethoddescriptor(unwrapped)) and
not inspect.is_cython_function_or_method(unwrapped)):
# cannot introspect arguments of a C function or method
return None
try:
if (not inspect.isfunction(unwrapped) and
not inspect.ismethod(unwrapped) and
not inspect.isbuiltin(unwrapped) and
not inspect.is_cython_function_or_method(unwrapped) and
not inspect.isclass(unwrapped) and
hasattr(unwrapped, '__call__')):
self.env.app.emit('autodoc-before-process-signature',
unwrapped.__call__, False)
sig = inspect.signature(unwrapped.__call__)
self.env.app.emit('autodoc-before-process-signature', self.object, False)
if inspect.is_singledispatch_function(self.object):
sig = inspect.signature(self.object, follow_wrapped=True)
else:
self.env.app.emit('autodoc-before-process-signature', unwrapped, False)
sig = inspect.signature(unwrapped)
sig = inspect.signature(self.object)
args = stringify_signature(sig, **kwargs)
except TypeError:
if (inspect.is_builtin_class_method(unwrapped, '__new__') and
inspect.is_builtin_class_method(unwrapped, '__init__')):
raise TypeError('%r is a builtin class' % unwrapped)
# if a class should be documented as function (yay duck
# typing) we try to use the constructor signature as function
# signature without the first argument.
try:
self.env.app.emit('autodoc-before-process-signature',
unwrapped.__new__, True)
sig = inspect.signature(unwrapped.__new__, bound_method=True)
args = stringify_signature(sig, show_return_annotation=False, **kwargs)
except TypeError:
self.env.app.emit('autodoc-before-process-signature',
unwrapped.__init__, True)
sig = inspect.signature(unwrapped.__init__, bound_method=True)
args = stringify_signature(sig, show_return_annotation=False, **kwargs)
except TypeError as exc:
logger.warning(__("Failed to get a function signature for %s: %s"),
self.fullname, exc)
return None
except ValueError:
args = ''
if self.env.config.strip_signature_backslash:
# escape backslashes for reST
@ -1074,41 +1068,28 @@ class FunctionDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # typ
def add_directive_header(self, sig: str) -> None:
sourcename = self.get_sourcename()
if inspect.is_singledispatch_function(self.object):
self.add_singledispatch_directive_header(sig)
else:
super().add_directive_header(sig)
super().add_directive_header(sig)
if inspect.iscoroutinefunction(self.object):
self.add_line(' :async:', sourcename)
def add_singledispatch_directive_header(self, sig: str) -> None:
sourcename = self.get_sourcename()
def format_signature(self, **kwargs: Any) -> str:
sig = super().format_signature(**kwargs)
sigs = [sig]
# intercept generated directive headers
# TODO: It is very hacky to use mock to intercept header generation
with patch.object(self, 'add_line') as add_line:
super().add_directive_header(sig)
if inspect.is_singledispatch_function(self.object):
# append signature of singledispatch'ed functions
for typ, func in self.object.registry.items():
if typ is object:
pass # default implementation. skipped.
else:
self.annotate_to_first_argument(func, typ)
# output first line of header
self.add_line(*add_line.call_args_list[0][0])
documenter = FunctionDocumenter(self.directive, '')
documenter.object = func
sigs.append(documenter.format_signature())
# inserts signature of singledispatch'ed functions
for typ, func in self.object.registry.items():
if typ is object:
pass # default implementation. skipped.
else:
self.annotate_to_first_argument(func, typ)
documenter = FunctionDocumenter(self.directive, '')
documenter.object = func
self.add_line(' %s%s' % (self.format_name(),
documenter.format_signature()),
sourcename)
# output remains of directive header
for call in add_line.call_args_list[1:]:
self.add_line(*call[0])
return "\n".join(sigs)
def annotate_to_first_argument(self, func: Callable, typ: Type) -> None:
"""Annotate type hint to the first argument of function if needed."""
@ -1448,18 +1429,33 @@ class MethodDocumenter(DocstringSignatureMixin, ClassLevelDocumenter): # type:
if self.env.config.autodoc_typehints in ('none', 'description'):
kwargs.setdefault('show_annotation', False)
unwrapped = inspect.unwrap(self.object)
if ((inspect.isbuiltin(unwrapped) or inspect.ismethoddescriptor(unwrapped)) and
not inspect.is_cython_function_or_method(unwrapped)):
# can never get arguments of a C function or method
try:
if self.object == object.__init__ and self.parent != object:
# Classes not having own __init__() method are shown as no arguments.
#
# Note: The signature of object.__init__() is (self, /, *args, **kwargs).
# But it makes users confused.
args = '()'
else:
if inspect.isstaticmethod(self.object, cls=self.parent, name=self.object_name):
self.env.app.emit('autodoc-before-process-signature', self.object, False)
sig = inspect.signature(self.object, bound_method=False)
else:
self.env.app.emit('autodoc-before-process-signature', self.object, True)
meth = self.parent.__dict__.get(self.objpath[-1], None)
if meth and inspect.is_singledispatch_method(meth):
sig = inspect.signature(self.object, bound_method=True,
follow_wrapped=True)
else:
sig = inspect.signature(self.object, bound_method=True)
args = stringify_signature(sig, **kwargs)
except TypeError as exc:
logger.warning(__("Failed to get a method signature for %s: %s"),
self.fullname, exc)
return None
if inspect.isstaticmethod(unwrapped, cls=self.parent, name=self.object_name):
self.env.app.emit('autodoc-before-process-signature', unwrapped, False)
sig = inspect.signature(unwrapped, bound_method=False)
else:
self.env.app.emit('autodoc-before-process-signature', unwrapped, True)
sig = inspect.signature(unwrapped, bound_method=True)
args = stringify_signature(sig, **kwargs)
except ValueError:
args = ''
if self.env.config.strip_signature_backslash:
# escape backslashes for reST
@ -1467,11 +1463,7 @@ class MethodDocumenter(DocstringSignatureMixin, ClassLevelDocumenter): # type:
return args
def add_directive_header(self, sig: str) -> None:
meth = self.parent.__dict__.get(self.objpath[-1])
if inspect.is_singledispatch_method(meth):
self.add_singledispatch_directive_header(sig)
else:
super().add_directive_header(sig)
super().add_directive_header(sig)
sourcename = self.get_sourcename()
obj = self.parent.__dict__.get(self.object_name, self.object)
@ -1489,34 +1481,26 @@ class MethodDocumenter(DocstringSignatureMixin, ClassLevelDocumenter): # type:
def document_members(self, all_members: bool = False) -> None:
pass
def add_singledispatch_directive_header(self, sig: str) -> None:
sourcename = self.get_sourcename()
def format_signature(self, **kwargs: Any) -> str:
sig = super().format_signature(**kwargs)
sigs = [sig]
# intercept generated directive headers
# TODO: It is very hacky to use mock to intercept header generation
with patch.object(self, 'add_line') as add_line:
super().add_directive_header(sig)
# output first line of header
self.add_line(*add_line.call_args_list[0][0])
# inserts signature of singledispatch'ed functions
meth = self.parent.__dict__.get(self.objpath[-1])
for typ, func in meth.dispatcher.registry.items():
if typ is object:
pass # default implementation. skipped.
else:
self.annotate_to_first_argument(func, typ)
if inspect.is_singledispatch_method(meth):
# append signature of singledispatch'ed functions
for typ, func in meth.dispatcher.registry.items():
if typ is object:
pass # default implementation. skipped.
else:
self.annotate_to_first_argument(func, typ)
documenter = MethodDocumenter(self.directive, '')
documenter.object = func
self.add_line(' %s%s' % (self.format_name(),
documenter.format_signature()),
sourcename)
documenter = MethodDocumenter(self.directive, '')
documenter.parent = self.parent
documenter.object = func
documenter.objpath = [None]
sigs.append(documenter.format_signature())
# output remains of directive header
for call in add_line.call_args_list[1:]:
self.add_line(*call[0])
return "\n".join(sigs)
def annotate_to_first_argument(self, func: Callable, typ: Type) -> None:
"""Annotate type hint to the first argument of function if needed."""
@ -1753,6 +1737,14 @@ def autodoc_attrgetter(app: Sphinx, obj: Any, name: str, *defargs: Any) -> Any:
return safe_getattr(obj, name, *defargs)
def migrate_autodoc_member_order(app: Sphinx, config: Config) -> None:
if config.autodoc_member_order == 'alphabetic':
# RemovedInSphinx50Warning
logger.warning(__('autodoc_member_order now accepts "alphabetical" '
'instead of "alphabetic". Please update your setting.'))
config.autodoc_member_order = 'alphabetical' # type: ignore
def setup(app: Sphinx) -> Dict[str, Any]:
app.add_autodocumenter(ModuleDocumenter)
app.add_autodocumenter(ClassDocumenter)
@ -1768,7 +1760,8 @@ def setup(app: Sphinx) -> Dict[str, Any]:
app.add_autodocumenter(SlotsAttributeDocumenter)
app.add_config_value('autoclass_content', 'class', True, ENUM('both', 'class', 'init'))
app.add_config_value('autodoc_member_order', 'alphabetic', True)
app.add_config_value('autodoc_member_order', 'alphabetical', True,
ENUM('alphabetic', 'alphabetical', 'bysource', 'groupwise'))
app.add_config_value('autodoc_default_options', {}, True)
app.add_config_value('autodoc_docstring_signature', True, True)
app.add_config_value('autodoc_mock_imports', [], True)
@ -1781,6 +1774,8 @@ def setup(app: Sphinx) -> Dict[str, Any]:
app.add_event('autodoc-process-signature')
app.add_event('autodoc-skip-member')
app.connect('config-inited', migrate_autodoc_member_order)
app.setup_extension('sphinx.ext.autodoc.type_comment')
app.setup_extension('sphinx.ext.autodoc.typehints')

View File

@ -298,8 +298,7 @@ class Autosummary(SphinxDirective):
with mock(self.config.autosummary_mock_imports):
real_name, obj, parent, modname = import_by_name(name, prefixes=prefixes)
except ImportError:
logger.warning(__('failed to import %s'), name)
items.append((name, '', '', name))
logger.warning(__('autosummary: failed to import %s'), name)
continue
self.bridge.result = StringList() # initialize for each documenter

View File

@ -45,6 +45,7 @@ from sphinx.locale import __
from sphinx.registry import SphinxComponentRegistry
from sphinx.util import logging
from sphinx.util import rst
from sphinx.util import split_full_qualified_name
from sphinx.util.inspect import safe_getattr
from sphinx.util.osutil import ensuredir
from sphinx.util.template import SphinxTemplateLoader
@ -244,19 +245,19 @@ def generate_autosummary_content(name: str, obj: Any, parent: Any,
ns['attributes'], ns['all_attributes'] = \
get_members(obj, {'attribute', 'property'})
parts = name.split('.')
modname, qualname = split_full_qualified_name(name)
if doc.objtype in ('method', 'attribute', 'property'):
mod_name = '.'.join(parts[:-2])
cls_name = parts[-2]
obj_name = '.'.join(parts[-2:])
ns['class'] = cls_name
ns['class'] = qualname.rsplit(".", 1)[0]
if doc.objtype in ('class',):
shortname = qualname
else:
mod_name, obj_name = '.'.join(parts[:-1]), parts[-1]
shortname = qualname.rsplit(".", 1)[-1]
ns['fullname'] = name
ns['module'] = mod_name
ns['objname'] = obj_name
ns['name'] = parts[-1]
ns['module'] = modname
ns['objname'] = qualname
ns['name'] = shortname
ns['objtype'] = doc.objtype
ns['underline'] = len(name) * '='

View File

@ -12,7 +12,6 @@
import posixpath
import re
import subprocess
from hashlib import sha1
from os import path
from subprocess import CalledProcessError, PIPE
from typing import Any, Dict, List, Tuple
@ -25,7 +24,7 @@ import sphinx
from sphinx.application import Sphinx
from sphinx.errors import SphinxError
from sphinx.locale import _, __
from sphinx.util import logging
from sphinx.util import logging, sha1
from sphinx.util.docutils import SphinxDirective, SphinxTranslator
from sphinx.util.fileutil import copy_asset
from sphinx.util.i18n import search_image_for_language

View File

@ -14,7 +14,6 @@ import shutil
import subprocess
import sys
import tempfile
from hashlib import sha1
from os import path
from subprocess import CalledProcessError, PIPE
from typing import Any, Dict, List, Tuple
@ -29,7 +28,7 @@ from sphinx.builders import Builder
from sphinx.config import Config
from sphinx.errors import SphinxError
from sphinx.locale import _, __
from sphinx.util import logging
from sphinx.util import logging, sha1
from sphinx.util.math import get_node_equation_number, wrap_displaymath
from sphinx.util.osutil import ensuredir
from sphinx.util.png import read_png_depth, write_png_depth

View File

@ -38,7 +38,6 @@ r"""
import builtins
import inspect
import re
from hashlib import md5
from importlib import import_module
from typing import Any, Dict, Iterable, List, Tuple
from typing import cast
@ -55,6 +54,7 @@ from sphinx.ext.graphviz import (
graphviz, figure_wrapper,
render_dot_html, render_dot_latex, render_dot_texinfo
)
from sphinx.util import md5
from sphinx.util.docutils import SphinxDirective
from sphinx.writers.html import HTMLTranslator
from sphinx.writers.latex import LaTeXTranslator

View File

@ -131,8 +131,10 @@ def env_merge_info(app: Sphinx, env: BuildEnvironment, docnames: Iterable[str],
def missing_reference(app: Sphinx, env: BuildEnvironment, node: Element, contnode: Node
) -> Node:
# resolve our "viewcode" reference nodes -- they need special treatment
if node['reftype'] == 'viewcode':
if app.builder.format != 'html':
return None
elif node['reftype'] == 'viewcode':
# resolve our "viewcode" reference nodes -- they need special treatment
return make_refnode(app.builder, node['refdoc'], node['reftarget'],
node['refid'], contnode)

View File

@ -17,7 +17,7 @@ from typing import Any, Callable, Dict, Iterable, List, Optional, Tuple, Union
class _TranslationProxy(UserString):
"""
Class for proxy strings from gettext translations. This is a helper for the
Class for proxy strings from gettext translations. This is a helper for the
lazy_* functions from this module.
The proxy implementation attempts to be as complete as possible, so that
@ -109,7 +109,7 @@ translators = defaultdict(NullTranslations) # type: Dict[Tuple[str, str], NullT
def init(locale_dirs: List[str], language: str,
catalog: str = 'sphinx', namespace: str = 'general') -> Tuple[NullTranslations, bool]:
"""Look for message catalogs in `locale_dirs` and *ensure* that there is at
least a NullTranslations catalog set in `translators`. If called multiple
least a NullTranslations catalog set in `translators`. If called multiple
times or if several ``.mo`` files are found, their contents are merged
together (thus making ``init`` reentrant).
"""

View File

@ -41,7 +41,7 @@ msgstr "تشغيل Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr "Rusachoj kamulunem:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr "Ruch'ab'äl samaj"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -43,7 +43,7 @@ msgstr "Kører Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1133,7 +1133,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1170,7 +1170,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1457,7 +1457,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1486,7 +1486,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -44,7 +44,7 @@ msgstr "Sphinx v%s in Verwendung"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1134,7 +1134,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1171,7 +1171,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1458,7 +1458,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1487,7 +1487,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr "Εκτέλεση Sphinx έκδοση %s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr "Σφάλμα αναδρομής:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "Αυτό μπορεί να συμβεί με πολύ μεγάλα ή βαθιά εμφωλιασμένα αρχεία πηγής. Μπορείτε προσεκτικά να αυξήσετε την προεπιλεγμένη τιμή αναδρομικότητας Python στο conf.py με π.χ.:"
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr "Γλώσσα έργου"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300
@ -2447,7 +2447,7 @@ msgstr "τοποθέτηση βιβλιογραφίας δομοστοιχείο
msgid ""
"interpret module paths according to PEP-0420 implicit namespaces "
"specification"
msgstr "ερμηνεία μονοπατιών δομοστοιχείων σύμφωνα με την προδιαγραφή POP-0420 αυτονόητων namespaces"
msgstr "ερμηνεία μονοπατιών δομοστοιχείων σύμφωνα με την προδιαγραφή POP-0420 αυτονόητων namespaces"
#: sphinx/ext/apidoc.py:411
msgid "file suffix (default: rst)"

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -47,7 +47,7 @@ msgstr "Ejecutando Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr "Por razones de seguridad, el modo paralelo está deshabilitado en macOS y python3.8 y superior. Para más detalles, lea https://github.com/sphinx-doc/sphinx/issues/6803"
@ -154,7 +154,7 @@ msgid ""
"the %s extension does not declare if it is safe for parallel reading, "
"assuming it isn't - please ask the extension author to check and make it "
"explicit"
msgstr "la extensión de %s no declara si es seguro para la lectura en paralelo, asumiendo que no es - consulte con el autor de la extensión para comprobar y hacer explícito"
msgstr "la extensión de %s no declara si es seguro para la lectura en paralelo, asumiendo que no es - consulte con el autor de la extensión para comprobar y hacer explícito"
#: sphinx/application.py:1128
#, python-format
@ -1137,7 +1137,7 @@ msgstr "Error de recursión:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "Esto puede suceder con archivos fuente muy grandes o profundamente anidados. Puede aumentar cuidadosamente el límite de recursión de Python predeterminado de 1000 en el archivo conf.py con, por ejemplo:"
@ -1174,7 +1174,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1184,7 +1184,7 @@ msgid ""
"\n"
"By default, everything that is outdated is built. Output only for selected\n"
"files can be built by specifying individual filenames.\n"
msgstr "\nGenerar documentación a partir de archivos fuente.\n\nsphinx-build genera documentación de los archivos en SOURCEDIR y la coloca\nen OUTPUTDIR. Busca el archivo 'conf.py' en SOURCEDIR para los ajustes de la \nconfiguración. La herramienta 'sphinx-quickstart' puede usarse para generar archivos de plantilla,\nincluyendo el archivo 'conf.py'\n\nsphinx-build puede crear documentación en diferentes formatos. Un formato es\nseleccionado especificando el nombre del constructor en la línea de comando; por defecto es\nHTML. Los constructores también pueden realizar otras tareas relacionadas con la\ndocumentación.\n\nPor defecto, todo lo que está desactualizado está construido. Salida solo para los archivos\nseleccionados se pueden construir especificando nombres de archivo individuales.\n"
msgstr "\nGenerar documentación a partir de archivos fuente.\n\nsphinx-build genera documentación de los archivos en SOURCEDIR y la coloca\nen OUTPUTDIR. Busca el archivo 'conf.py' en SOURCEDIR para los ajustes de la \nconfiguración. La herramienta 'sphinx-quickstart' puede usarse para generar archivos de plantilla,\nincluyendo el archivo 'conf.py'\n\nsphinx-build puede crear documentación en diferentes formatos. Un formato es\nseleccionado especificando el nombre del constructor en la línea de comando; por defecto es\nHTML. Los constructores también pueden realizar otras tareas relacionadas con la\ndocumentación.\n\nPor defecto, todo lo que está desactualizado está construido. Salida solo para los archivos\nseleccionados se pueden construir especificando nombres de archivo individuales.\n"
#: sphinx/cmd/build.py:122
msgid "path to documentation source files"
@ -1461,7 +1461,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr "Sphinx tiene la noción de una \"version\" y un \"release\" para el\nsoftware. Cada versión puede tener múltiples versiones. Por ejemplo, para\nPython la versión es algo así como 2.5 o 3.0, mientras que el lanzamiento es\nalgo así como 2.5.1 o 3.0a1. Si no necesita esta estructura dual,\nsolo establezca ambos en el mismo valor."
@ -1490,7 +1490,7 @@ msgstr "Lenguaje del proyecto"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr "El sufijo del nombre de archivo para los archivos de origen. Comúnmente, esto es \".txt\"\no \".rst\". Solo los archivos con este sufijo se consideran documentos."
#: sphinx/cmd/quickstart.py:300
@ -2617,7 +2617,7 @@ msgstr "[gráfica]"
#: sphinx/ext/imgconverter.py:41 sphinx/ext/imgconverter.py:65
#, python-format
msgid "convert command %r cannot be run, check the image_converter setting"
msgstr "el comando convert %r no puede ejecutar, compruebe el valor de configuración image_converter"
msgstr "el comando convert %r no puede ejecutar, compruebe el valor de configuración image_converter"
#: sphinx/ext/imgconverter.py:46 sphinx/ext/imgconverter.py:70
#, python-format

View File

@ -44,7 +44,7 @@ msgstr "Sphinx v%s käitamine"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1134,7 +1134,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1171,7 +1171,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1458,7 +1458,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1487,7 +1487,7 @@ msgstr "Projekti keel"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -61,7 +61,7 @@ msgstr "Sphinx v%s en cours d'exécution"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -321,7 +321,7 @@ msgstr "Nom d'évènement inconnu : %s"
msgid ""
"The %s extension is required by needs_extensions settings, but it is not "
"loaded."
msgstr "L'extension %s est exigée par le paramètre needs_extensions, mais n'est pas chargée."
msgstr "L'extension %s est exigée par le paramètre needs_extensions, mais n'est pas chargée."
#: sphinx/extension.py:56
#, python-format
@ -1151,7 +1151,7 @@ msgstr "Erreur de récursion :"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "Cela peut se produire avec des fichiers sources très volumineux ou profondément imbriqués. Vous pouvez soigneusement augmenter la limite de récursivité par défaut de Python de 1000 dans conf.py avec p. ex. :"
@ -1188,7 +1188,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1475,7 +1475,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1504,7 +1504,7 @@ msgstr "Langue du projet"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300
@ -2611,7 +2611,7 @@ msgstr "dot a terminé avec une erreur :\n[stderr]\n%r\n[stdout]\n%r"
#: sphinx/ext/graphviz.py:269
#, python-format
msgid "graphviz_output_format must be one of 'png', 'svg', but is %r"
msgstr "graphviz_output_format doit être « png » ou « svg », mais est %r"
msgstr "graphviz_output_format doit être « png » ou « svg », mais est %r"
#: sphinx/ext/graphviz.py:273 sphinx/ext/graphviz.py:324
#: sphinx/ext/graphviz.py:361

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -44,7 +44,7 @@ msgstr "स्फिंक्स %s संस्करण चल रहा ह
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr "सुरक्षा कारण वर्ष macOS तथा python 3.8 और अधिक, के साथ समानांतर कार्य शैली कि सुविधा उपलब्ध नहीं हैं | अधिक जानकारी के लिए, कृपया \"https://github.com/sphinx-doc/sphinx/issues/6803\" पढ़े |"
@ -1134,7 +1134,7 @@ msgstr "पुनरावर्तन त्रुटि:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "ऐसा बहुत बड़ी अथवा गहरे स्तर तक गई स्रोत फाइलों से संभव है. आप स्वतः मानक पाइथन पुनरावर्तन सीमा 1000 को conf.py में बाधा सकते हैं. जैसे कि:"
@ -1171,7 +1171,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1458,7 +1458,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr "स्फिंक्स सॉफ्टवेयर के लिए संस्करण और आवृत्ति को मान्यता देता है.\nहर संस्करण की कई आवृत्तियाँ हो सकती हैं. उदाहरण के लिए,\nपाइथन संस्करण 2.5 अथवा 3.0 आदि हैं, और आवृत्ति\n2.5.1 अथवा 3.0a1 आदि हैं. यदि आपको इसे दो स्तर पर रखना नहीं चाहिए\nतो दोनों मान एक ही रख दें."
@ -1487,7 +1487,7 @@ msgstr "परियोजना की भाषा"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300
@ -2789,7 +2789,7 @@ msgstr "स्वतः-प्रभाग %s के लिए हस्ता
msgid ""
"__all__ should be a list of strings, not %r (in module %s) -- ignoring "
"__all__"
msgstr "__all__ अंतिम अक्षरमाला होनी चाहिए, न कि %r (%s प्रभाग में) -- __all__ की उपेक्षा की जाएगी"
msgstr "__all__ अंतिम अक्षरमाला होनी चाहिए, न कि %r (%s प्रभाग में) -- __all__ की उपेक्षा की जाएगी"
#: sphinx/ext/autodoc/__init__.py:852
#, python-format

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr "Izrada pomoću Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -449,7 +449,7 @@ msgstr "%s proširenje traži Sphinx verzije v%s; stoga projekt ne može biti iz
msgid ""
"extension %r returned an unsupported object from its setup() function; it "
"should return None or a metadata dictionary"
msgstr "proširenje %r vratio je nepodržan objekt iz setup() funkcije; rezultat treba biti None ili riječnik metapodataka"
msgstr "proširenje %r vratio je nepodržan objekt iz setup() funkcije; rezultat treba biti None ili riječnik metapodataka"
#: sphinx/roles.py:221 sphinx/roles.py:271
#, python-format
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -45,7 +45,7 @@ msgstr "Sphinx %s verzió futtatása"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1135,7 +1135,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1172,7 +1172,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1459,7 +1459,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1488,7 +1488,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -45,9 +45,9 @@ msgstr "Menjalankan Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr "Untuk alasan keamanan, mode paralel dinonaktifkan di macOS dan python3.8 dan di atasnya. Untuk detail lebih lanjut, silakan baca https://github.com/sphinx-doc/sphinx/issues/6803"
msgstr "Untuk alasan keamanan, mode paralel dinonaktifkan di macOS dan python3.8 dan di atasnya. Untuk detail lebih lanjut, silakan baca https://github.com/sphinx-doc/sphinx/issues/6803"
#: sphinx/application.py:226
#, python-format
@ -1135,7 +1135,7 @@ msgstr "Kesalahan rekursi:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "Hal ini dapat terjadi dengan berkas sumber yang besar atau sangat dalam bertingkat. Anda dapat secara hati-hati meningkatkan batas standar recursi Python dari 1000 di conf.py contohnya:"
@ -1172,7 +1172,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1182,7 +1182,7 @@ msgid ""
"\n"
"By default, everything that is outdated is built. Output only for selected\n"
"files can be built by specifying individual filenames.\n"
msgstr "\nMenghasilkan dokumentasi ari berkas sumber.\n\nsphinx-build menghasilkan dokumentasi dari berkas-berkas di SOURCEDIR dan menyimpannya\ndi OUTPUTDIR. Program tersebut mencari berkas 'conf.py' di SOURCEDIR untuk pengaturan\nkonfigurasinya. Alat 'sphinx-quickstart' dapat digunakan untuk menghasilkan berkas templat,\ntermasuk 'conf.py'\n\nsphinx-build dapat membuat dokumentasi dalam beragam format. Sebuah format\ndipilih berdasarkan nama builder pada command line; standarnya\nHTML. Builders pun dapat menjalankan tugas lainnya berhubungan dengan pemrosesan\ndocumentasi.\n\nSecara umum, semua yang usang akan dibuat. Output hanya untuk berkas\npilihan dapat dibuat dengan menentukan berkas satuan.\n"
msgstr "\nMenghasilkan dokumentasi ari berkas sumber.\n\nsphinx-build menghasilkan dokumentasi dari berkas-berkas di SOURCEDIR dan menyimpannya\ndi OUTPUTDIR. Program tersebut mencari berkas 'conf.py' di SOURCEDIR untuk pengaturan\nkonfigurasinya. Alat 'sphinx-quickstart' dapat digunakan untuk menghasilkan berkas templat,\ntermasuk 'conf.py'\n\nsphinx-build dapat membuat dokumentasi dalam beragam format. Sebuah format\ndipilih berdasarkan nama builder pada command line; standarnya\nHTML. Builders pun dapat menjalankan tugas lainnya berhubungan dengan pemrosesan\ndocumentasi.\n\nSecara umum, semua yang usang akan dibuat. Output hanya untuk berkas\npilihan dapat dibuat dengan menentukan berkas satuan.\n"
#: sphinx/cmd/build.py:122
msgid "path to documentation source files"
@ -1459,7 +1459,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1488,7 +1488,7 @@ msgstr "Bahasa proyek"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -45,7 +45,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1135,7 +1135,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1172,7 +1172,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1459,7 +1459,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1488,7 +1488,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -55,7 +55,7 @@ msgstr "Sphinx v%s を実行中"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr "セキュリティ上の理由から、macOSおよびpython3.8以降では並列モードが無効になっています。 詳細については https://github.com/sphinx-doc/sphinx/issues/6803 をご覧ください。"
@ -1145,7 +1145,7 @@ msgstr "再起呼び出しエラー:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "この例外エラーは、非常に大きな、または深くネストされたソースファイルで発生する可能性があります。再帰処理の呼び出しの上限値 1000 は conf.py で変更できますが、慎重に行ってください。"
@ -1182,7 +1182,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1469,7 +1469,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr "Sphinx には、ソフトウェアに対して \"バージョン\" と \"リリース\" という概念が\nあります。各バージョンは複数のリリースを持つことができます。\n例えば、Python だとバージョンが 2.5 や 3.0 のように分かれているように、\nリリースも 2.5.1 や 3.0a1 のように分けて持つことができます。もしこのような多重構成が必要ない場合は、\n両方を同じ値に設定するだけです。"
@ -1498,7 +1498,7 @@ msgstr "プロジェクトの言語"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr "拡張子の名前はソースファイルに使います。\n通常は \".txt\" または \".rst\" です。これらの拡張子を持つファイルのみがドキュメントと見なされます。"
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr "Sphinx 버전 %s 실행 중"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr "프로젝트 언어"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -46,7 +46,7 @@ msgstr "Sphinx v%s start op"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1136,7 +1136,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1173,7 +1173,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1460,7 +1460,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1489,7 +1489,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -44,7 +44,7 @@ msgstr "Uruchamianie Sphinksa v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1134,7 +1134,7 @@ msgstr "Błąd rekursji:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1171,7 +1171,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1458,7 +1458,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1487,7 +1487,7 @@ msgstr "Język projektu"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -46,7 +46,7 @@ msgstr "Executando Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr "Por motivos de segurança, o modo paralelo está desativado no macOS e python3.8 e superior. Para mais detalhes, leia https://github.com/sphinx-doc/sphinx/issues/6803"
@ -1136,7 +1136,7 @@ msgstr "Erro de recursão:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "Isso pode acontecer com arquivos-fonte muito grandes ou profundamente aninhados. Você pode aumentar cuidadosamente o limite de recursão padrão do Python de 1000 em conf.py, p.ex.:"
@ -1173,7 +1173,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1460,7 +1460,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr "Sphinx tem a noção de uma \"versão\" e uma \"lançamento\" para o software.\nCada versão pode ter vários lançamentos. Por exemplo, para Python, a\nversão é algo como 2.5 ou 3.0, enquanto o lançamento é algo como 2.5.1\nou 3.0a1. Se você não precisar dessa estrutura dupla, basta definir as\nduas para o mesmo valor."
@ -1489,7 +1489,7 @@ msgstr "Idioma do projeto"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr "O sufixo do nome do arquivo para os arquivos-fonte. Geralmente ele é\n\".txt\" ou \".rst\". Somente arquivos com esse sufixo são considerados\ndocumentos."
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -42,7 +42,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1132,7 +1132,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1169,7 +1169,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1456,7 +1456,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1485,7 +1485,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -46,7 +46,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1136,7 +1136,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1173,7 +1173,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1460,7 +1460,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1489,7 +1489,7 @@ msgstr "Язык проекта"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -43,7 +43,7 @@ msgstr "Spúšťanie Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1133,7 +1133,7 @@ msgstr "Chyba rekurzie:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1170,7 +1170,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1457,7 +1457,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1486,7 +1486,7 @@ msgstr "Jazyk projektu"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -1136,7 +1136,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1174,7 +1174,7 @@ msgid ""
"sphinx-build generates documentation from the files in SOURCEDIR and "
"places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template "
"settings. The 'sphinx-quickstart' tool may be used to generate template "
"files,\n"
"including 'conf.py'\n"
"\n"
@ -1467,7 +1467,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""

View File

@ -40,9 +40,9 @@ msgstr "Po xhirohet Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr "Për arsye sigurie, mënyra paralele është e çaktivizuar në macOS dhe python3.8 dhe më sipër. Për më tepër hollësi, ju lutemi, lexoni https://github.com/sphinx-doc/sphinx/issues/6803"
msgstr "Për arsye sigurie, mënyra paralele është e çaktivizuar në macOS dhe python3.8 dhe më sipër. Për më tepër hollësi, ju lutemi, lexoni https://github.com/sphinx-doc/sphinx/issues/6803"
#: sphinx/application.py:226
#, python-format
@ -1130,10 +1130,10 @@ msgstr "Gabim përsëritje:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "Kjo mund të ndodhë me kartela burim shumë të mëdha ose të futura thellë brenda njëra-tjetrës. Mund të rrisni me kujdes kufirin parazgjedhje për ripërsëritje Python prej 1000 te conf.py me p.sh.:"
msgstr "Kjo mund të ndodhë me kartela burim shumë të mëdha ose të futura thellë brenda njëra-tjetrës. Mund të rrisni me kujdes kufirin parazgjedhje për ripërsëritje Python prej 1000 te conf.py me p.sh.:"
#: sphinx/cmd/build.py:67
msgid "Exception occurred:"
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,9 +1454,9 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr "Sphinx-i përdor nocionet e një \"versioni\" dhe një \"hedhjeje në qarkullim\" për\nsoftware-in. Çdo version mund të ketë hedhje të shumta në qarkullim. Bie\nfjala, për Python-in versionet ngjajnë me 2.5 ose 3.0, teksa hedhja në\nqarkullim ngjan me 2.5.1 ose 3.0a1. Nëse sju hyn në punë kjo strukturë\nduale, thjesht vëruni të dyjave të njëjtën vlerë."
msgstr "Sphinx-i përdor nocionet e një \"versioni\" dhe një \"hedhjeje në qarkullim\" për\nsoftware-in. Çdo version mund të ketë hedhje të shumta në qarkullim. Bie\nfjala, për Python-in versionet ngjajnë me 2.5 ose 3.0, teksa hedhja në\nqarkullim ngjan me 2.5.1 ose 3.0a1. Nëse sju hyn në punë kjo strukturë\nduale, thjesht vëruni të dyjave të njëjtën vlerë."
#: sphinx/cmd/quickstart.py:280
msgid "Project version"
@ -1483,8 +1483,8 @@ msgstr "Gjuhë projekti"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
msgstr "Prapashtesa e emrave të kartelave për kartela burim. Zakonisht, kjo\nështë ose \".txt\", ose \".rst\". Vetëm kartelat me këtë prapashtesë\nmerren si dokumente."
"or \".rst\". Only files with this suffix are considered documents."
msgstr "Prapashtesa e emrave të kartelave për kartela burim. Zakonisht, kjo\nështë ose \".txt\", ose \".rst\". Vetëm kartelat me këtë prapashtesë\nmerren si dokumente."
#: sphinx/cmd/quickstart.py:300
msgid "Source file suffix"

View File

@ -41,7 +41,7 @@ msgstr "Покрећем Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -43,7 +43,7 @@ msgstr "Sphinx s%s çalışıyor"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr "Güvenlik nedeni ile macOS ve python 3.8 ve üzerinde paralel kip etkisizleştirildi. Daha fazla bilgi için lütfen https://github.com/sphinx-doc/sphinx/issues/6803 adresindekileri okuyun"
@ -1133,7 +1133,7 @@ msgstr "Tekrarlama hatası:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "Bu, çok büyük veya çok fazla iç içe girmiş kaynak dosyaları ile olabilir. Varsayılan Python tekrarlama sınırını conf.py dosyasında şu örnekle 1000'e kadar dikkatlice artırabilirsiniz:"
@ -1170,7 +1170,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1457,7 +1457,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr "Sphinx, yazılım için bir \"sürüm\" ve bir \"yayım\" kavramına sahiptir.\nHer sürümün birden çok yayımı olabilir. Örneğin, Python için\nsürüm 2.5 veya 3.0 gibi bir şeydir, yayım ise 2.5.1 veya 3.0a1 gibi\nbir şeydir. Eğer bu çift yapıya ihtiyacınız yoksa, her ikisini de aynı\ndeğere ayarlayın."
@ -1486,7 +1486,7 @@ msgstr "Proje dili"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr "Kaynak dosyalar için dosya adı soneki. Genellikle, bu ya \".txt\" ya da\n\".rst\"dir. Sadece bu soneki içeren dosyalar belgeler olarak kabul edilir."
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -40,7 +40,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1130,7 +1130,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1167,7 +1167,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1454,7 +1454,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1483,7 +1483,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -41,7 +41,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1131,7 +1131,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1168,7 +1168,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1455,7 +1455,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1484,7 +1484,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -52,7 +52,7 @@ msgstr "正在运行 Sphinx v%s"
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -495,7 +495,7 @@ msgstr "不支持的主题选项 %r"
#: sphinx/theming.py:228
#, python-format
msgid "file %r on theme path is not a valid zipfile or contains no theme"
msgstr "主题路径指定的文件 %r 是一个无效的或不包含主题的 zip 文件"
msgstr "主题路径指定的文件 %r 是一个无效的或不包含主题的 zip 文件"
#: sphinx/theming.py:243
msgid ""
@ -1142,7 +1142,7 @@ msgstr "递归错误:"
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr "在源文件过大或嵌套层数过深时会出现此错误。你可以在 conf.py 中增大默认的Python 递归 1000 层限制,像这样:"
@ -1179,7 +1179,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1466,7 +1466,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1495,7 +1495,7 @@ msgstr "项目语种"
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -46,7 +46,7 @@ msgstr ""
#: sphinx/application.py:202
msgid ""
"For security reason, parallel mode is disabled on macOS and python3.8 and "
"above. For more details, please read https://github.com/sphinx-"
"above. For more details, please read https://github.com/sphinx-"
"doc/sphinx/issues/6803"
msgstr ""
@ -1136,7 +1136,7 @@ msgstr ""
#: sphinx/cmd/build.py:62
msgid ""
"This can happen with very large or deeply nested source files. You can "
"This can happen with very large or deeply nested source files. You can "
"carefully increase the default Python recursion limit of 1000 in conf.py "
"with e.g.:"
msgstr ""
@ -1173,7 +1173,7 @@ msgid ""
"\n"
"sphinx-build generates documentation from the files in SOURCEDIR and places it\n"
"in OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"settings. The 'sphinx-quickstart' tool may be used to generate template files,\n"
"including 'conf.py'\n"
"\n"
"sphinx-build can create documentation in different formats. A format is\n"
@ -1460,7 +1460,7 @@ msgid ""
"Sphinx has the notion of a \"version\" and a \"release\" for the\n"
"software. Each version can have multiple releases. For example, for\n"
"Python the version is something like 2.5 or 3.0, while the release is\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"something like 2.5.1 or 3.0a1. If you don't need this dual structure,\n"
"just set both to the same value."
msgstr ""
@ -1489,7 +1489,7 @@ msgstr ""
#: sphinx/cmd/quickstart.py:298
msgid ""
"The file name suffix for source files. Commonly, this is either \".txt\"\n"
"or \".rst\". Only files with this suffix are considered documents."
"or \".rst\". Only files with this suffix are considered documents."
msgstr ""
#: sphinx/cmd/quickstart.py:300

View File

@ -75,113 +75,142 @@ def unparse(node: Optional[ast.AST]) -> Optional[str]:
return None
elif isinstance(node, str):
return node
elif node.__class__ in OPERATORS:
return _UnparseVisitor().visit(node)
# a greatly cut-down version of `ast._Unparser`
class _UnparseVisitor(ast.NodeVisitor):
def _visit_op(self, node: ast.AST) -> str:
return OPERATORS[node.__class__]
elif isinstance(node, ast.arg):
for _op in OPERATORS:
locals()['visit_{}'.format(_op.__name__)] = _visit_op
def visit_arg(self, node: ast.arg) -> str:
if node.annotation:
return "%s: %s" % (node.arg, unparse(node.annotation))
return "%s: %s" % (node.arg, self.visit(node.annotation))
else:
return node.arg
elif isinstance(node, ast.arguments):
return unparse_arguments(node)
elif isinstance(node, ast.Attribute):
return "%s.%s" % (unparse(node.value), node.attr)
elif isinstance(node, ast.BinOp):
return " ".join(unparse(e) for e in [node.left, node.op, node.right])
elif isinstance(node, ast.BoolOp):
op = " %s " % unparse(node.op)
return op.join(unparse(e) for e in node.values)
elif isinstance(node, ast.Bytes):
return repr(node.s)
elif isinstance(node, ast.Call):
args = ([unparse(e) for e in node.args] +
["%s=%s" % (k.arg, unparse(k.value)) for k in node.keywords])
return "%s(%s)" % (unparse(node.func), ", ".join(args))
elif isinstance(node, ast.Dict):
keys = (unparse(k) for k in node.keys)
values = (unparse(v) for v in node.values)
def _visit_arg_with_default(self, arg: ast.arg, default: Optional[ast.AST]) -> str:
"""Unparse a single argument to a string."""
name = self.visit(arg)
if default:
if arg.annotation:
name += " = %s" % self.visit(default)
else:
name += "=%s" % self.visit(default)
return name
def visit_arguments(self, node: ast.arguments) -> str:
defaults = list(node.defaults)
positionals = len(node.args)
posonlyargs = 0
if hasattr(node, "posonlyargs"): # for py38+
posonlyargs += len(node.posonlyargs) # type:ignore
positionals += posonlyargs
for _ in range(len(defaults), positionals):
defaults.insert(0, None)
kw_defaults = list(node.kw_defaults)
for _ in range(len(kw_defaults), len(node.kwonlyargs)):
kw_defaults.insert(0, None)
args = [] # type: List[str]
if hasattr(node, "posonlyargs"): # for py38+
for i, arg in enumerate(node.posonlyargs): # type: ignore
args.append(self._visit_arg_with_default(arg, defaults[i]))
if node.posonlyargs: # type: ignore
args.append('/')
for i, arg in enumerate(node.args):
args.append(self._visit_arg_with_default(arg, defaults[i + posonlyargs]))
if node.vararg:
args.append("*" + self.visit(node.vararg))
if node.kwonlyargs and not node.vararg:
args.append('*')
for i, arg in enumerate(node.kwonlyargs):
args.append(self._visit_arg_with_default(arg, kw_defaults[i]))
if node.kwarg:
args.append("**" + self.visit(node.kwarg))
return ", ".join(args)
def visit_Attribute(self, node: ast.Attribute) -> str:
return "%s.%s" % (self.visit(node.value), node.attr)
def visit_BinOp(self, node: ast.BinOp) -> str:
return " ".join(self.visit(e) for e in [node.left, node.op, node.right])
def visit_BoolOp(self, node: ast.BoolOp) -> str:
op = " %s " % self.visit(node.op)
return op.join(self.visit(e) for e in node.values)
def visit_Call(self, node: ast.Call) -> str:
args = ([self.visit(e) for e in node.args] +
["%s=%s" % (k.arg, self.visit(k.value)) for k in node.keywords])
return "%s(%s)" % (self.visit(node.func), ", ".join(args))
def visit_Dict(self, node: ast.Dict) -> str:
keys = (self.visit(k) for k in node.keys)
values = (self.visit(v) for v in node.values)
items = (k + ": " + v for k, v in zip(keys, values))
return "{" + ", ".join(items) + "}"
elif isinstance(node, ast.Ellipsis):
return "..."
elif isinstance(node, ast.Index):
return unparse(node.value)
elif isinstance(node, ast.Lambda):
return "lambda %s: ..." % unparse(node.args)
elif isinstance(node, ast.List):
return "[" + ", ".join(unparse(e) for e in node.elts) + "]"
elif isinstance(node, ast.Name):
def visit_Index(self, node: ast.Index) -> str:
return self.visit(node.value)
def visit_Lambda(self, node: ast.Lambda) -> str:
return "lambda %s: ..." % self.visit(node.args)
def visit_List(self, node: ast.List) -> str:
return "[" + ", ".join(self.visit(e) for e in node.elts) + "]"
def visit_Name(self, node: ast.Name) -> str:
return node.id
elif isinstance(node, ast.NameConstant):
return repr(node.value)
elif isinstance(node, ast.Num):
return repr(node.n)
elif isinstance(node, ast.Set):
return "{" + ", ".join(unparse(e) for e in node.elts) + "}"
elif isinstance(node, ast.Str):
return repr(node.s)
elif isinstance(node, ast.Subscript):
return "%s[%s]" % (unparse(node.value), unparse(node.slice))
elif isinstance(node, ast.UnaryOp):
return "%s %s" % (unparse(node.op), unparse(node.operand))
elif isinstance(node, ast.Tuple):
def visit_Set(self, node: ast.Set) -> str:
return "{" + ", ".join(self.visit(e) for e in node.elts) + "}"
def visit_Subscript(self, node: ast.Subscript) -> str:
return "%s[%s]" % (self.visit(node.value), self.visit(node.slice))
def visit_UnaryOp(self, node: ast.UnaryOp) -> str:
return "%s %s" % (self.visit(node.op), self.visit(node.operand))
def visit_Tuple(self, node: ast.Tuple) -> str:
if node.elts:
return ", ".join(unparse(e) for e in node.elts)
return ", ".join(self.visit(e) for e in node.elts)
else:
return "()"
elif sys.version_info > (3, 6) and isinstance(node, ast.Constant):
# this branch should be placed at last
return repr(node.value)
else:
if sys.version_info >= (3, 6):
def visit_Constant(self, node: ast.Constant) -> str:
if node.value is Ellipsis:
return "..."
else:
return repr(node.value)
if sys.version_info < (3, 8):
# these ast nodes were deprecated in python 3.8
def visit_Bytes(self, node: ast.Bytes) -> str:
return repr(node.s)
def visit_Ellipsis(self, node: ast.Ellipsis) -> str:
return "..."
def visit_NameConstant(self, node: ast.NameConstant) -> str:
return repr(node.value)
def visit_Num(self, node: ast.Num) -> str:
return repr(node.n)
def visit_Str(self, node: ast.Str) -> str:
return repr(node.s)
def generic_visit(self, node):
raise NotImplementedError('Unable to parse %s object' % type(node).__name__)
def _unparse_arg(arg: ast.arg, default: Optional[ast.AST]) -> str:
"""Unparse a single argument to a string."""
name = unparse(arg)
if default:
if arg.annotation:
name += " = %s" % unparse(default)
else:
name += "=%s" % unparse(default)
return name
def unparse_arguments(node: ast.arguments) -> str:
"""Unparse an arguments to string."""
defaults = list(node.defaults) # type: List[Optional[ast.AST]]
positionals = len(node.args)
posonlyargs = 0
if hasattr(node, "posonlyargs"): # for py38+
posonlyargs += len(node.posonlyargs) # type:ignore
positionals += posonlyargs
for _ in range(len(defaults), positionals):
defaults.insert(0, None)
kw_defaults = list(node.kw_defaults) # type: List[Optional[ast.AST]]
for _ in range(len(kw_defaults), len(node.kwonlyargs)):
kw_defaults.insert(0, None)
args = [] # type: List[str]
if hasattr(node, "posonlyargs"): # for py38+
for i, arg in enumerate(node.posonlyargs): # type: ignore
args.append(_unparse_arg(arg, defaults[i]))
if node.posonlyargs: # type: ignore
args.append('/')
for i, arg in enumerate(node.args):
args.append(_unparse_arg(arg, defaults[i + posonlyargs]))
if node.vararg:
args.append("*" + unparse(node.vararg))
if node.kwonlyargs and not node.vararg:
args.append('*')
for i, arg in enumerate(node.kwonlyargs):
args.append(_unparse_arg(arg, kw_defaults[i]))
if node.kwarg:
args.append("**" + unparse(node.kwarg))
return ", ".join(args)

View File

@ -22,7 +22,7 @@ from sphinx import addnodes
from sphinx import package_dir
from sphinx.environment import BuildEnvironment
from sphinx.search.jssplitter import splitter_code
from sphinx.util import jsdump, rpartition
from sphinx.util import jsdump
class SearchLanguage:
@ -324,7 +324,7 @@ class IndexBuilder:
continue
fullname = html.escape(fullname)
dispname = html.escape(dispname)
prefix, name = rpartition(dispname, '.')
prefix, _, name = dispname.rpartition('.')
pdict = rv.setdefault(prefix, {})
try:
typeindex = otypes[domainname, type]

View File

@ -23,6 +23,7 @@ from docutils.utils.smartquotes import smartchars
from sphinx import addnodes
from sphinx.config import Config
from sphinx.locale import _, __
from sphinx.util import docutils
from sphinx.util import logging
from sphinx.util.docutils import new_document
from sphinx.util.i18n import format_date
@ -359,12 +360,18 @@ class SphinxSmartQuotes(SmartQuotes, SphinxTransform):
def get_tokens(self, txtnodes: List[Text]) -> Generator[Tuple[str, str], None, None]:
# A generator that yields ``(texttype, nodetext)`` tuples for a list
# of "Text" nodes (interface to ``smartquotes.educate_tokens()``).
texttype = {True: 'literal', # "literal" text is not changed:
False: 'plain'}
for txtnode in txtnodes:
notsmartquotable = not is_smartquotable(txtnode)
yield (texttype[notsmartquotable], txtnode.astext())
if is_smartquotable(txtnode):
if docutils.__version_info__ >= (0, 16):
# SmartQuotes uses backslash escapes instead of null-escapes
text = re.sub(r'(?<=\x00)([-\\\'".`])', r'\\\1', str(txtnode))
else:
text = txtnode.astext()
yield ('plain', text)
else:
# skip smart quotes
yield ('literal', txtnode.astext())
class DoctreeReadEvent(SphinxTransform):

View File

@ -10,7 +10,6 @@
import os
import re
from hashlib import sha1
from math import ceil
from typing import Any, Dict, List, Tuple
@ -19,7 +18,7 @@ from docutils import nodes
from sphinx.application import Sphinx
from sphinx.locale import __
from sphinx.transforms import SphinxTransform
from sphinx.util import epoch_to_rfc1123, rfc1123_to_epoch
from sphinx.util import epoch_to_rfc1123, rfc1123_to_epoch, sha1
from sphinx.util import logging, requests
from sphinx.util.images import guess_mimetype, get_image_extension, parse_data_uri
from sphinx.util.osutil import ensuredir, movefile
@ -194,7 +193,9 @@ class ImageConverter(BaseImageConverter):
super().__init__(*args, **kwargs)
def match(self, node: nodes.image) -> bool:
if self.available is None:
if not self.app.builder.supported_image_types:
return False
elif self.available is None:
self.available = self.is_available()
if not self.available:

View File

@ -9,15 +9,16 @@
"""
import functools
import hashlib
import os
import posixpath
import re
import sys
import tempfile
import traceback
import warnings
import unicodedata
from datetime import datetime
from hashlib import md5
from importlib import import_module
from os import path
from time import mktime, strptime
@ -25,6 +26,7 @@ from typing import Any, Callable, Dict, IO, Iterable, Iterator, List, Pattern, S
from typing import TYPE_CHECKING
from urllib.parse import urlsplit, urlunsplit, quote_plus, parse_qsl, urlencode
from sphinx.deprecation import RemovedInSphinx50Warning
from sphinx.errors import SphinxParallelError, ExtensionError, FiletypeNotFoundError
from sphinx.locale import __
from sphinx.util import logging
@ -145,6 +147,36 @@ class FilenameUniqDict(dict):
self._existing = state
def md5(data=b'', **kwargs):
"""Wrapper around hashlib.md5
Attempt call with 'usedforsecurity=False' if we get a ValueError, which happens when
OpenSSL FIPS mode is enabled:
ValueError: error:060800A3:digital envelope routines:EVP_DigestInit_ex:disabled for fips
See: https://github.com/sphinx-doc/sphinx/issues/7611
"""
try:
return hashlib.md5(data, **kwargs) # type: ignore
except ValueError:
return hashlib.md5(data, **kwargs, usedforsecurity=False) # type: ignore
def sha1(data=b'', **kwargs):
"""Wrapper around hashlib.sha1
Attempt call with 'usedforsecurity=False' if we get a ValueError
See: https://github.com/sphinx-doc/sphinx/issues/7611
"""
try:
return hashlib.sha1(data, **kwargs) # type: ignore
except ValueError:
return hashlib.sha1(data, **kwargs, usedforsecurity=False) # type: ignore
class DownloadFiles(dict):
"""A special dictionary for download files.
@ -310,6 +342,7 @@ def parselinenos(spec: str, total: int) -> List[int]:
def rpartition(s: str, t: str) -> Tuple[str, str]:
"""Similar to str.rpartition from 2.5, but doesn't return the separator."""
warnings.warn('rpartition() is now deprecated.', RemovedInSphinx50Warning, stacklevel=2)
i = s.rfind(t)
if i != -1:
return s[:i], s[i + len(t):]
@ -378,6 +411,31 @@ def import_object(objname: str, source: str = None) -> Any:
raise ExtensionError('Could not import %s' % objname, exc)
def split_full_qualified_name(name: str) -> Tuple[str, str]:
"""Split full qualified name to a pair of modname and qualname.
A qualname is an abbreviation for "Qualified name" introduced at PEP-3155
(https://www.python.org/dev/peps/pep-3155/). It is a dotted path name
from the module top-level.
A "full" qualified name means a string containing both module name and
qualified name.
.. note:: This function imports module actually to check the exisitence.
Therefore you need to mock 3rd party modules if needed before
calling this function.
"""
parts = name.split('.')
for i, part in enumerate(parts, 1):
try:
modname = ".".join(parts[:i])
import_module(modname)
except ImportError:
return ".".join(parts[:i - 1]), ".".join(parts[i - 1:])
return name, ""
def encode_uri(uri: str) -> str:
split = list(urlsplit(uri))
split[1] = split[1].encode('idna').decode('ascii')

View File

@ -372,27 +372,39 @@ def is_builtin_class_method(obj: Any, attr_name: str) -> bool:
Why this function needed? CPython implements int.__init__ by Descriptor
but PyPy implements it by pure Python code.
"""
classes = [c for c in inspect.getmro(obj) if attr_name in c.__dict__]
cls = classes[0] if classes else object
if not hasattr(builtins, safe_getattr(cls, '__name__', '')):
try:
mro = inspect.getmro(obj)
except AttributeError:
# no __mro__, assume the object has no methods as we know them
return False
return getattr(builtins, safe_getattr(cls, '__name__', '')) is cls
try:
cls = next(c for c in mro if attr_name in safe_getattr(c, '__dict__', {}))
except StopIteration:
return False
try:
name = safe_getattr(cls, '__name__')
except AttributeError:
return False
return getattr(builtins, name, None) is cls
def signature(subject: Callable, bound_method: bool = False) -> inspect.Signature:
def signature(subject: Callable, bound_method: bool = False, follow_wrapped: bool = False
) -> inspect.Signature:
"""Return a Signature object for the given *subject*.
:param bound_method: Specify *subject* is a bound method or not
:param follow_wrapped: Same as ``inspect.signature()``.
Defaults to ``False`` (get a signature of *subject*).
"""
# check subject is not a built-in class (ex. int, str)
if (isinstance(subject, type) and
is_builtin_class_method(subject, "__new__") and
is_builtin_class_method(subject, "__init__")):
raise TypeError("can't compute signature for built-in type {}".format(subject))
try:
signature = inspect.signature(subject)
try:
signature = inspect.signature(subject, follow_wrapped=follow_wrapped)
except ValueError:
# follow built-in wrappers up (ex. functools.lru_cache)
signature = inspect.signature(subject)
parameters = list(signature.parameters.values())
return_annotation = signature.return_annotation
except IndexError:

View File

@ -39,6 +39,12 @@ TitleGetter = Callable[[nodes.Node], str]
Inventory = Dict[str, Dict[str, Tuple[str, str, str, str]]]
def is_system_TypeVar(typ: Any) -> bool:
"""Check *typ* is system defined TypeVar."""
modname = getattr(typ, '__module__', '')
return modname == 'typing' and isinstance(typ, TypeVar) # type: ignore
def stringify(annotation: Any) -> str:
"""Stringify type annotation object."""
if isinstance(annotation, str):
@ -85,18 +91,23 @@ def _stringify_py37(annotation: Any) -> str:
if getattr(annotation, '__args__', None):
if qualname == 'Union':
if len(annotation.__args__) == 2 and annotation.__args__[1] is NoneType: # type: ignore # NOQA
return 'Optional[%s]' % stringify(annotation.__args__[0])
if len(annotation.__args__) > 1 and annotation.__args__[-1] is NoneType: # type: ignore # NOQA
if len(annotation.__args__) > 2:
args = ', '.join(stringify(a) for a in annotation.__args__[:-1])
return 'Optional[Union[%s]]' % args
else:
return 'Optional[%s]' % stringify(annotation.__args__[0])
else:
args = ', '.join(stringify(a) for a in annotation.__args__)
return '%s[%s]' % (qualname, args)
return 'Union[%s]' % args
elif qualname == 'Callable':
args = ', '.join(stringify(a) for a in annotation.__args__[:-1])
returns = stringify(annotation.__args__[-1])
return '%s[[%s], %s]' % (qualname, args, returns)
elif str(annotation).startswith('typing.Annotated'): # for py39+
return stringify(annotation.__args__[0])
elif getattr(annotation, '_special', False):
elif all(is_system_TypeVar(a) for a in annotation.__args__):
# Suppress arguments if all system defined TypeVars (ex. Dict[KT, VT])
return qualname
else:
args = ', '.join(stringify(a) for a in annotation.__args__)
@ -148,8 +159,12 @@ def _stringify_py36(annotation: Any) -> str:
annotation.__origin__ is typing.Union):
params = annotation.__args__
if params is not None:
if len(params) == 2 and params[1] is NoneType: # type: ignore
return 'Optional[%s]' % stringify(params[0])
if len(params) > 1 and params[-1] is NoneType: # type: ignore
if len(params) > 2:
param_str = ", ".join(stringify(p) for p in params[:-1])
return 'Optional[Union[%s]]' % param_str
else:
return 'Optional[%s]' % stringify(params[0])
else:
param_str = ', '.join(stringify(p) for p in params)
return 'Union[%s]' % param_str

View File

@ -0,0 +1,12 @@
class Foo:
pass
class Bar:
def __init__(self, x, y):
pass
class Baz:
def __new__(cls, x, y):
pass

View File

@ -1,5 +1,9 @@
from functools import wraps
def deco1(func):
"""docstring for deco1"""
@wraps(func)
def wrapper():
return func()
@ -14,3 +18,14 @@ def deco2(condition, message):
return wrapper
return decorator
@deco1
def foo(name=None, age=None):
pass
class Bar:
@deco1
def meth(self, name=None, age=None):
pass

View File

@ -3,6 +3,9 @@ from typing import Union
class Foo:
class Bar:
pass
def __init__(self):
pass

Some files were not shown because too many files have changed in this diff Show More